 |
Deutsche Kalenderwochen berechnen
Wollen Sie mit Excel die Kalenderwoche eines vorgegebenen Datums berechnen, erhalten Sie von der Funktion »KALENDERWOCHE« - sie ist Bestandteil des Addins »Analyse-Funktionen« - unter Umständen ein falsches Ergebnis. Diese Funktion berechnet die Kalenderwoche nach dem amerikanischen Standard und hält sich nicht an die DIN-Norm. So fällt nach dieser Berechnung der 4. Januar 1999 angeblich in die zweite Kalenderwoche und nicht - wie es korrekt wäre - in die erste. Die DIN-Norm besagt, daß der 1. Januar eines Jahres nur dann zur ersten Kalenderwoche des Jahres gehört, wenn er auf einen Montag, Dienstag, Mittwoch oder Donnerstag fällt. Handelt es sich beim 1. Januar um einen Freitag, Samstag oder Sonntag, zählt er noch zur letzten Kalenderwoche des vorigen Jahres. Außerdem können der 29., 30. und 31. Dezember eines Jahres bereits zur ersten Kalenderwoche des folgenden Jahres gehören. Das ist dann der Fall, wenn der 31. Dezember auf einen Montag, Dienstag oder Mittwoch fällt. Mit Hilfe der unten gezeigten VBA-Funktion können Sie die deutsche Kalenderwoche eines Datums ermitteln. Öffnen Sie mit [Alt] [F11] den Visual-Basic-Editor und wählen »Einfügen | Modul«. In das neue Modul-Fenster geben Sie die unten aufgeführten Befehle ein. Jetzt können Sie die neue Funktion in Ihren Tabellen verwenden. Geben Sie in einer Zelle etwa als Funktion »deutsche_Kalenderwoche("4.1.99")« ein, so erhalten Sie als Ergebnis den Wert »1«. Funktion zur Ermittlung der deutschen Kalenderwoche: Function deutsche_Kalenderwoche(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 = deutsche_Kalenderwoche(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 deutsche_Kalenderwoche = kw End Function
|
 |