Zum Hauptinhalt springen

Konvertieren einer Zeichenfolge in ein Datum in VBA Excel

Bei der Arbeit mit Daten in Microsoft Excel müssen Sie sich häufig mit Daten befassen. Manchmal können Datumsangaben jedoch als Zeichenfolge dargestellt werden. In solchen Fällen müssen Sie die Zeichenfolge in ein Datum konvertieren, um sie als Datumstyp zu behandeln.

In der Programmiersprache VBA (Visual Basic for Applications), die in Excel verwendet wird, gibt es mehrere Möglichkeiten, eine Zeichenfolge in ein Datum zu konvertieren. Eine der häufigsten Methoden ist die Verwendung der CDate-Funktion. Diese Funktion konvertiert eine Zeichenfolge in ein Datum, wenn die Zeichenfolge einem der gültigen Datumsformate entspricht.

Beispielsweise kann die Zeichenfolge "12.05.2025" mithilfe des folgenden Codes in ein Datum konvertiert werden:

Dim myDate As Date

myDate = CDate("12.05.2025")

Daher enthält die Variable MyDate den Wert für den 12. Mai 2025 im Datumsformat.

Wie konvertiert man eine Zeichenfolge in VBA Excel in ein Datum?

In Excel VBA können Sie eine Zeichenfolge mithilfe der CDate-Funktion einfach in ein Datum konvertieren. Diese Funktion konvertiert den Wert entsprechend den aktuellen Datumsformateinstellungen des Betriebssystems in ein Datum.

Stellen Sie vor der Verwendung der CDate-Funktion sicher, dass die angegebene Zeichenfolge das richtige Datumsformat hat, das den Einstellungen Ihres Betriebssystems entspricht. Wenn Ihr Betriebssystem beispielsweise das Datumsformat "tt/ mm/jjjj" verwendet, muss die Zeichenfolge im gleichen Format vorliegen.

Hier ist ein Beispielcode, der zeigt, wie eine Zeichenfolge in VBA Excel in ein Datum konvertiert wird:

  • Dim dateStr As String - Deklarieren einer Variablen für eine Datumszeichenfolge
  • Dim DateValue As Date - Deklarieren einer Variablen für das konvertierte Datum
  • dateStr = "01/01/2025" ist ein Beispiel für eine Zeichenfolge mit einem Datum
  • DateValue = CDate(dateStr) - Konvertiert eine Zeichenfolge in ein Datum

Nachdem dieser Code ausgeführt wurde, enthält der Wert der Variablen DateValue das konvertierte Datum.

Beachten Sie, dass die CDate-Funktion einen Fehler verursachen kann, wenn der angegebene Wert nicht in ein Datum konvertiert werden kann. Daher wird empfohlen, vor dem Konvertieren einer Zeichenfolge in ein Datum eine Überprüfung hinzuzufügen, um sicherzustellen, dass das Datumsformat korrekt ist.

Jetzt wissen Sie, wie Sie eine Zeichenfolge in Excel VBA mit der CDate-Funktion in ein Datum konvertieren. Dies ist eine nützliche Fähigkeit, wenn Sie mit Datumsangaben in Ihren Makros und Programmen arbeiten.

Methoden zum Konvertieren einer Zeichenfolge in ein Datum in Excel VBA

In VBA Excel gibt es verschiedene Methoden zum Konvertieren einer Zeichenfolge in ein Datum. Dies kann nützlich sein, wenn Sie mit Datumsangaben im Zeichenfolgenformat arbeiten und Operationen wie Vergleichen, Sortieren oder Berechnen für sie durchführen möchten.

Im Folgenden sind einige der gängigsten Methoden zum Konvertieren einer Zeichenfolge in ein Datum in VBA Excel aufgeführt:

MethodeEin BeispielDie Beschreibung
CDateCDate("01/01/2025")Konvertiert eine Zeichenfolge in ein Datum
DateSerialDateSerial(2025, 1, 1)Erstellt ein Datum aus den üblichen numerischen Werten für Jahr, Monat und Tag
DateValueDateValue("01/01/2025")Konvertiert nur den Teil der Zeichenfolge, der das Datum enthält, in ein Datum
IsDateIsDate("01/01/2025")Überprüft, ob die Zeichenfolge ein gültiges Datum ist
CVarCVar("01/01/2025")Konvertiert eine Zeichenfolge in einen beliebigen verfügbaren Datentyp, einschließlich eines Datums

Jede dieser Methoden hat ihre eigenen Transformationsmerkmale und eignet sich für verschiedene Anwendungsfälle. Beim Konvertieren einer Zeichenfolge in ein Datum müssen Sie das Datumsformat in der Zeichenfolge und das im System akzeptierte Datumsformat berücksichtigen, um Konvertierungsfehler zu vermeiden.

Sie können auch die Format-Funktion verwenden, um das gewünschte Datumsformat nach der Konvertierung festzulegen. Zum Beispiel:

Dim dateStr As StringDim dateValue As DatedateStr = "01/01/2025"dateValue = CDate(dateStr)Debug.Print Format(dateValue, "m/d/yyyy") ' Выведет: 1/1/2025Debug.Print Format(dateValue, "dd/mm/yyyy") ' Выведет: 01/01/2025Debug.Print Format(dateValue, "mmm dd, yyyy") ' Выведет: Jan 01, 2025

Mit diesen Konvertierungsmethoden können Sie eine Zeichenfolge in Excel VBA einfach in ein Datum konvertieren und zusätzliche Operationen mit dem resultierenden Datumswert ausführen.

Verwenden der CDate-Funktion zum Konvertieren einer Zeichenfolge in ein Datum

In der VBA-Programmiersprache in Excel gibt es eine CDate-Funktion, mit der Sie eine Zeichenfolge in ein Datum konvertieren können. Die CDate-Funktion akzeptiert eine Zeichenfolge im Datumsformat und gibt das Datum als Date-Wert zurück.

Um die CDate-Funktion zu verwenden, müssen Sie ihr eine Zeichenfolge übergeben, die ein Datum in einem bestimmten Format enthält. Das Datumsformat kann unterschiedlich sein, muss jedoch mit dem im Betriebssystem verwendeten Datumsformat kompatibel sein. Beispielsweise sind die folgenden Datumsformate gültig:

  • TT-MM-JJJJ (z. B. "31-12-2025")
  • JJJJ-MM-TT (z. B. "2025-12-31")
  • MM/TT/JJJJ (z. B. "12/31/2025")

Beispiel für die Verwendung der CDate-Funktion:

Dim strDate As StringDim myDate As DatestrDate = "31-12-2025"myDate = CDate(strDate)MsgBox "Введенная дата: " & myDate

Im folgenden Beispiel wird die Zeichenfolge "31-12-2025" in einen Date-Wert konvertiert und in der Variablen MyDate gespeichert. Mit der MsgBox-Funktion wird dann eine Nachricht mit dem konvertierten Datum angezeigt.

Wenn die Zeichenfolge nicht in ein Datum konvertiert werden kann, verursacht die CDate-Funktion einen Ausführungsfehler. Daher wird empfohlen, die Fehlerbehandlung zu verwenden, um die Eingaben zu validieren.

Die Verwendung der CDate-Funktion erleichtert das Arbeiten mit Datumsangaben in VBA Excel, indem Sie Zeichenfolgen in Datumsangaben konvertieren und verschiedene Operationen mit ihnen ausführen können.