Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
280to284
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
280to284
280to284
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Kalenderwochen

Kalenderwochen
17.07.2003 16:02:00
Martin Wlotzka
Hallo,
ich möchte gerne wissen ob man mit Makros Kalenderwochen berechnen kann?
Wenn ja, wie geht es und wo finde ich Infos darüber?
Ich bedanke mich schon mal im Voraus!

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kalenderwochen
17.07.2003 16:03:39
Hajo_Zi
Hallo Martin
hier mal aus meinem Archiv
Kalenderwoche nach DIN

Function KALENDERWOCHE_DIN(Datum As Date) As Integer
'von Christoph Kremer, Aachen
'Berechnt die KW nach DIN 1355
Dim t&
t = DateSerial(Year(Datum + (8 - Weekday(Datum)) Mod 7 - 3), 1, 1)
KALENDERWOCHE_DIN = (Datum - t - 3 + (Weekday(t) + 1) Mod 7) \ 7 + 1
End Function

letzte KW im Jahr feststellen

Sub kw()
Dim Kalenderwoche As Integer
Dim Testtag as Date
Testtag = CDate("31.12." & "1998")
Kalenderwoche = Int((Testtag - DateSerial(Year(Testtag), 1, 1) + ((WeekDay(DateSerial(Year(Testtag), 1, 1)) + 1) Mod 7) - 3) / 7) + 1
If Kalenderwoche = 0 Then
Kalenderwoche = DateSerial(Year(Testtag) - 1, 12, 31)
ElseIf Kalenderwoche = 53 And (WeekDay(DateSerial(Year(Testtag), 12, 31)) - 1) Mod 7 <= 3 Then
Kalenderwoche = 52
End If
End Sub

Oder im Register
Warum muß es so eine komplizierte Formel sein Erklärung von WF
Die Funktion KALENDERWOCHE rechnet falsch oder sagen wir es gnädiger: nach amerikanischem Standard. Der 01.01.2000 z.B. ist laut DIN die 52. KW des Jahres 1999; - in den USA die erste im Jahre 2000. Das hab ich mir irgendwann mal kopiert:
Erst 1976 wurde der Wochenbeginn auf Montag festgelegt. Die erste Woche des Jahres ist definiert als die Woche, in die mindestens 4 Tage fallen. Beides = DIN 1355 (1974) Entspricht der internationalen Norm ISO 8601 (1988); -übernommen von der EU als EN 28601 (1992) und in Deutschland als DIN EN 28601 (1993) umgesetzt.
=KÜRZEN((G6-WOCHENTAG(G6;2)-DATUM(JAHR(G6+4-WOCHENTAG(G6;2));1;-10))/7)&". KW"
von WF
Und diese von Conny
Das Datum steht in G9
=GANZZAHL((G9-(JAHR(G9+REST((8-WOCHENTAG(G9));7)-3)&".1.1")-3+REST((WOCHENTAG((JAHR(G9+REST((8-WOCHENTAG(G9));7)-3)&".1.1"))+1);7))/7+1)&". KW"
Gruß Hajo
Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige