Die Funktion VBA WeekdayName gibt den Namen des Wochentags basierend auf seiner Nummer zurück.
WeekdayName(Datum)
Oder
WeekdayName(Datum, erster_Tag_der_Woche)
Standardmäßig ist der erste Tag der Woche Sonntag (1) und der letzte Tag Samstag (7).
Um die Nummerierung so zu ändern, dass Montag der erste Tag der Woche (1) und Sonntag der letzte Tag der Woche (7) ist, fügen Sie bei Verwendung dieser Funktion den Wert 2 als zweites Argument hinzu:
WeekdayName(Datum, 2)
Verwenden der Funktion WeekdayName, um den Namen der 7 Tage anzuzeigen:
Sub WeekdayNameExample1() MsgBox WeekdayName(1) 'Rückgabe: Montag MsgBox WeekdayName(2) 'Rückgabe: Dienstag MsgBox WeekdayName(3) 'Rückgabe: Mittwoch MsgBox WeekdayName(4) 'Rückgabe: Donnerstag MsgBox WeekdayName(5) 'Rückgabe: Freitag MsgBox WeekdayName(6) 'Rückgabe: Samstag MsgBox WeekdayName(7) 'Rückgabe: Sonntag End Sub
Die Funktion WeekdayName kann auch eine verkürzte Version des Tages anzeigen, indem sie einen Wert als zweites Argument übergibt:
Sub WeekdayNameExample2() MsgBox WeekdayName(1, True) 'Rückgabe: Mo. MsgBox WeekdayName(2, True) 'Rückgabe: Di. MsgBox WeekdayName(3, True) 'Rückgabe: Mi. MsgBox WeekdayName(4, True) 'Rückgabe: Do. MsgBox WeekdayName(5, True) 'Rückgabe: Fr. MsgBox WeekdayName(6, True) 'Rückgabe: Sa. MsgBox WeekdayName(7, True) 'Rückgabe: So. End Sub
Mit den Funktionen Weekday und WeekdayName können Sie den Namen des Wochentags aus einem Datum ermitteln:
Sub WeekdayNameExample3() MsgBox WeekdayName(Weekday("30.11.2020", 2)) 'Rückgabe: Montag End Sub
Obwohl es einfacher ist, direkt über die Formatierungsfunktion FORMAT zu gehen:
Sub WeekdayNameExample4() MsgBox Format("30.11.2020", "dddd") 'Rückgabe: Montag End Sub