Die 15 wichtigsten VBA-Funktionen für Zahlen und Datum

Zahlen und Datum: Die Day()-, Month()- und Year()-Funktionen

∅ 2.8 / 18 Bewertungen

Die Day()-, Month()- und Year()-Funktionen

Auf dieser Seite

Die Day()-, Month()- und Year()-Funktionen sind die sicherste Methode, aus einem Datum die jeweiligen Anteile korrekt zu ermitteln.

Auch bei den Datumsfunktionen gibt es wie für Texte ein häufig benutztes Funktionen-Trio: Day(), Month() und Year(). Diese Funktionen ermitteln aus einem kompletten Datumswert die jeweiligen Anteile:

'Weihnachten 2011 in korrekter Schreibweise:
Const m_cdatDatum = #12/24/2011#

Sub FindeTag()
    MsgBox "Tag: " & Day(m_cdatDatum)
End Sub

Sub FindeMonat()
    MsgBox "Monat: " & Month(m_cdatDatum)
End Sub

Sub FindeJahr()
    MsgBox "Jahr: " & Year(m_cdatDatum)
End Sub

Hier ist eine Modul-öffentliche Konstante eingesetzt, nämlich m_cdatDatum für Weihnachten 2011. Achten Sie bitte sowohl auf die Doppelkreuze um das Datum herum als auch die ungewohnte Reihenfolge:

  • Die Doppelkreuze markieren den darin stehenden Wert als Datum, damit das Trennzeichen nicht als Divisionszeichen missverstanden wird.

  • In VBA gilt immer die amerikanische Datums-Schreibweise, also Monat, Tag und Jahr mit dem Schrägstrich (Slash, rechtsgeneigt) als Trennzeichen.

Raute oder Doppelkreuz?

Die meisten Benutzer nennen das Doppelkreuz-Zeichen # fälschlicherweise Raute, vermutlich wegen der schon im BTX/Bildschirmtext der Deutschen Bundespost so üblichen falschen Benennung, siehe auch Wikipedia. Tatsächlich wäre eine Raute ein Karo, ein auf der Spitze stehendes Rechteck.

Die drei Funktionen Day(), Month() und Year() geben immer den jeweiligen Wert als Zahl zurück, für Monats- oder Werktagsnamen brauchen Sie die weiter unten beschriebene Format()-Funktion.