Kalenderwoche nach Deutscher Industrienorm (DIN 1355) in Excel mit VBA ermitteln

In vielen Projekten, insbesondere bei Planungs-, Reporting- oder Controlling-Aufgaben, ist die Berechnung der Kalenderwoche nach DIN 1355 (Deutsche Industrienorm) erforderlich. Die Standard-Funktion KALENDERWOCHE in Excel kann je nach Version unterschiedliche Zählweisen verwenden. Um eine konsistente Berechnung nach der ISO-/DIN-Norm zu gewährleisten, kann ein kleines VBA-Makro eingesetzt werden.

Dieses Makro ermöglicht es, die Kalenderwoche sowohl durch direkte Eingabe eines Datums als auch über eine Zellreferenz zu ermitteln.

                             
Public Sub kw_ermitteln()
' Beispiel: Ermittlung der Kalenderwoche eines Datums in Zelle A1
Dim kw As Integer
kw = DINKw(Range("A1")) ' Datum aus Zelle A1 verwenden
MsgBox "Die Kalenderwoche ist: " & kw
End Sub



Function DINKw(dat As Date) As Integer
Dim kw As Integer

' Berechnung der Kalenderwoche nach DIN 1355
kw = Int((dat - DateSerial(Year(dat), 1, 1) + _
((Weekday(DateSerial(Year(dat), 1, 1)) + 1) Mod 7) - 3) / 7) + 1

' Sonderfall: 0. KW des Jahres
If kw = 0 Then
kw = DINKw(DateSerial(Year(dat) - 1, 12, 31))
' Sonderfall: 53. KW
ElseIf kw = 53 And (Weekday(DateSerial(Year(dat), 12, 31)) - 1) Mod 7 <= 3 Then
kw = 1
End If

DINKw = kw
End Function


Funktionsweise

  1. Direkte Datumsübergabe:
    Die Funktion DINKw kann direkt ein Datum entgegennehmen:  kw = DINKw(#01.08.2025#)
  2. Zellbezug: Alternativ kann ein Wert aus einer Zelle verwendet werden, z. B.:  kw = DINKw(Range("A1"))
  3. Berechnung nach DIN 1355:
    • Die erste Kalenderwoche ist die Woche mit dem ersten Donnerstag des Jahres.
    • Die Berechnung berücksichtigt Sonderfälle am Jahresanfang und Jahresende, um korrekt KW 1 bzw. KW 53 zuzuordnen.
  4. Ausgabe: Das Makro "kw_ermitteln" zeigt die berechnete Kalenderwoche per Meldungsfenster (MsgBox) an.


Praxis-Tipps

  • Die Funktion kann in Reports, Planungsblättern oder automatisierten Auswertungen genutzt werden.
  • Für größere Datenmengen empfiehlt es sich, die Funktion in einer benutzerdefinierten Spalte aufzurufen, statt jedes Mal MsgBox zu verwenden.
  • Anpassungen für andere Länder oder ISO-Formate sind möglich, indem die Berechnung der ersten Woche angepasst wird.

Mit diesem Makro wird sichergestellt, dass die Kalenderwochen in allen Berichten konsistent nach DIN 1355 berechnet werden – unabhängig von Excel-Version oder regionalen Einstellungen.

Relevante Artikel

Projekt-Anfrage

Excel automatisieren. Zeit sparen.
Fehler vermeiden.
Wir entwickeln Ihre individuelle
Excel- / VBA-Lösung.
Jetzt anfragen!

Wir benutzen Cookies
Ihre Zufriedenheit ist unser Ziel, deshalb verwenden wir Cookies. Mit diesen ermöglichen wir, dass unsere Webseite zuverlässig und sicher läuft, wir die Performance im Blick behalten und Sie besser ansprechen können. Cookies werden benötigt, damit technisch alles funktioniert und Sie auch externe Inhalte lesen können. Des Weiteren sammeln wir unter anderem Daten über aufgerufene Seiten, getätigte Käufe oder geklickte Buttons, um so unser Angebot an Sie zu Verbessern. Mehr über unsere verwendeten Dienste erfahren Sie unter „Weitere Informationen“. Mit Klick auf „Akzeptieren“ erklären Sie sich mit der Verwendung dieser Dienste einverstanden. Ihre Einwilligung können Sie jederzeit mit Wirkung auf die Zukunft widerrufen oder ändern.