Algorithmensammlung: Kalender: Kalenderwoche

Aus Wikibooks

Algorithmensammlung: Kalender

Kalenderwoche[Bearbeiten]

Berechnung der  Kalenderwoche

Visual Basic for Applications[Bearbeiten]

Die Funktion berechnet die Kalenderwoche zu einem gegebenen Datum. Die Berechnung erfolgt nach DIN 1355/ISO 8601, d.h. der erste Tag der Woche ist Montag und die erste Kalenderwoche im Jahr ist die Woche, in die mindestens vier Tage des neuen Jahres fallen. Die Operation \ führt die ganzzahlige Division (div) aus.

Public Function KW(Datum As Date) As Byte
    KW = (Datum - 2) Mod 7
    KW = (Datum - DateSerial(Year(Datum - KW + 3), 1, KW - 9)) \ 7
End Function

Diese Funktion liefert allerdings z.B. für den 1. Januar 2016 oder den 31. Dezember 2018 ein falsches Ergebnis.