VBA CDate Funktion – String in Datum umwandeln

Written by

Mel Jenkins

Reviewed by

Steve Rynearson

Translated by

Zakarya El Oirzadi

Last updated on Dezember 27, 2022

In diesem kurzen Tutorial zeigen wir Ihnen, wie Sie in VBA eine Zeichenfolge in ein Datum umwandeln können.

Datumsangaben werden in Excel als Zahlen gespeichert und dann so formatiert, dass sie als Datum angezeigt werden. Tag 1 in der Welt von Excel war der 1. Januar 1900 (Windows-Standard) oder der 1. Januar 1904 (Macintosh-Standard). Das bedeutet, dass der 5. August 2021 der Tag 44413 seit dem 1. Januar 1900 ist. Um in Excel eine Zeichenkette in ein Datum umzuwandeln, müssen wir sie zunächst in eine Zahl umwandeln und diese Zahl dann in ein Datum.

Die CDate-Funktion

Wir können eine Funktion namens CDate in VBA verwenden, um eine Zeichenkette in ein Datum umzuwandeln.

Sub DatumUmwandeln()
  Dim dte As Single
  Dim strD As String
  strD = "05/10/2020"
  dte = CDate(strD)
  MsgBox dte
End Sub

Da wir eine numerische Variable deklariert haben (dte als Single), wird die Meldungsbox die Zahl, die sich auf das eingegebene Datum bezieht, zurückgeben.

vba datum zahlenwert anzeigen

Es ist wichtig, dass die Jahreszahl mit allen 4 Ziffern eingegeben wird (d. h. 2020 und nicht nur 20), da sonst die zurückgegebene Zahl möglicherweise den Erwartungen nicht entspricht. Excel interpretiert die Jahreszahl des Datums nicht. Dies wird über die Systemsteuerung unseres PCs gesteuert.

Wenn wir die Variablen jedoch als Datumsvariable deklarieren, gibt die Meldungsbox die in ein Datum umgewandelte Zahl zurück.

Sub DatumUmwandeln()
  Dim dte As Date
  Dim strD As String
  strD = "05/10/2020"
  dte = CDate(strD)
  MsgBox dte
End Sub vba datum ausgeben

Wir können noch einen Schritt weiter gehen und das Datum so formatieren, wie wir es gerne sehen möchten.

Sub DatumUmwandeln()
  Dim dte As String
  Dim strD As String
  strD = "05/10/2020"
  dte = Format(CDate(strD), "dd mmmm yyyy")
  MsgBox dte
End Sub

In diesem Beispiel konvertieren wir die Zeichenfolge in ein Datum und dann wieder zurück in eine Zeichenfolge!

vba datum anzeigen

 

Wenn wir das Jahr ganz weglassen, nimmt Excel das aktuelle Jahr an.

vba datum ohne jahresangabe

 

vba-free-addin

Add-In für VBA-Code-Beispiele

Auf alle Code-Beispiele aus unserer Website einfach zugreifen.

Navigieren Sie einfach zum Menü, klicken Sie darauf und der Code wird direkt in Ihr Modul eingefügt. .xlam add-in.

(Keine Installation erforderlich!)

Kostenloser Download

Return to VBA Code Examples