Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
432to436
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
432to436
432to436
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

KW Problem mit Formatierung

KW Problem mit Formatierung
27.05.2004 19:19:19
Pit
Hi Gemeinde,
habe wieder mal ein Problem ...
Ich möchte anhand eines Datums in einer Zelle die Kalenderwoche ausgeben. Nachdem die interne Analysefunktion ja die DIN-KW nicht berücksichtigt, mache ich die Berechnung über die bekannte Funktion.
Der Aufruf in der Ausgabezelle lautet dann =dt_KW(Zelle des Datums)
Jetzt zu meinem Problem:
Die KW soll im Format: KW 22/04 ausgegeben werden. Leider finde ich weder per Zelle, noch per VBA-Aufruf den richtigen Weg. Was ist in der vorletzten Zeile falsch?
bin für jede Anregung zur Lösung des Problems dankbar ...

Function dt_KW(dat As Date) As Integer
Dim kw As Integer
kw = Int((dat - DateSerial(Year(dat), 1, 1) + _
((WeekDay(DateSerial(Year(dat), 1, 1)) + 1) Mod 7) - 3) / 7) + 1
If kw = 0 Then
kw = dt_KW(DateSerial(Year(dat) - 1, 12, 31))
ElseIf kw = 53 And (WeekDay(DateSerial(Year(dat), 12, 31)) - 1) Mod 7 <= 3 Then
kw = 1
End If
dt_KW = "KW " & kw & "/" & Format(Datum, "yy")
End Function

Danke im Voraus
Pit

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: KW Problem mit Formatierung
27.05.2004 19:23:57
Nepumuk
Hallo Pit,
versuch es mal mit:
dt_KW = "KW " & kw & "/" & Right$(CStr(Year(dat)), 2)
Gruß
Nepumuk
AW: @Nepumuk
27.05.2004 23:38:22
Pit
Hi Nepumuk,
danke für deine Mühe, leider funktioniert das nicht.
... da steigt die komplette Anwendung samt Ecel aus.
Gruß Pit
AW: KW Problem mit Formatierung
27.05.2004 19:28:28
Ulf
dt_KW ist als Integer deklariert, du versuchst einen Text auszugeben.
Datum ist gar nicht deklariert?
Du bist besser beraten, die zelle in einem benutzerdefiniertem Format
zu formatieren, falls du mit dem wert weiterrechnen willst.
Ulf
AW: @Ulf
27.05.2004 23:43:57
Pit
Hi Ulf,
auch dir Dank für den Tip.
Datum sollte eigentlich Date heissen ... funktioniert aber trotzdem nicht.
Man kann doch eine Variable, die eigentlich als Integer deklariert ist, als Text übergeben ...
Als Zellenformat habe ich es schon probiert, das haut aber nicht hin ... zumindest nicht mit meinem begrenzen Wissen.
Gruß
Pit
Anzeige
AW: @Ulf
28.05.2004 02:14:18
Ulf
Lass das as Integer weg oder schreib as Variant.
Ulf
AW: @Ulf
28.05.2004 05:48:23
andre
Hallo allerseits,
warum nehmt Ihr nicht einfach den Format-Befehl? Dort kann man auch festlegen, ob die erste KW 4 Tage hat ... Bei Datepart gehts auch.

Sub testosteron()
MsgBox "KW " & Format(Date, "ww", vbMonday, vbFirstFourDays)
End Sub

AW: @Ulf
28.05.2004 16:31:43
Ulf
Die so gelieferte KW stimmt nur nicht mit der DIN überein.
Ulf
AW: testen erst vor schreiben auf ;-))
28.05.2004 18:15:22
andre

Sub testosteron()
For i = 0 To 9
MsgBox "01.01.200" & i & Chr(10) & _
"nicht DIN:   KW " & Format("01.01.200" & i, "ww", vbMonday) & Chr(10) & _
"DIN:            KW " & Format("01.01.200" & i, "ww", vbMonday, vbFirstFourDays)
Next
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige