String teilen in Excel-VBA?

2 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Du kannst die funktion "split" in VBA verwenden, um den string in ein array aufzuteilen Dann kannst du nur den ersten Teil des arrays (also das datum) verwenden und es in dass von dir gewünschte format umwandeln. Hier ist ein Beispielcode: ``` Dim datumuhrzeit As string Dim datumarray() As string Annahme: Der string befindet sich in der Variable "datumuhrzeit" datumarray = Split(datumuhrzeit, " ") datum ist jetzt der erste Teil des arrays Dim datum As Date datum = CDate(datumarray(0)) Dim datumformatiert As string datumformatiert = format(datum, "yyyy-mm-dd") datumformatiert enthält dass datum im gewünschten format ```


SchattexTv 
Beitragsersteller
 15.03.2023, 11:37

Vielen Dank für deine Antwort, Ich habe bereits seit 3h an dieser Split funktion gesessen und hatte schon exakt dasselbe da stehen wie du mir gerade geschrieben hast. Aber, ich intelligentes Wesen habe einfach von anfang an den falschen Wert importiert. Nämlich einen String der nur aus einem Wort besteht...Hätte ich also von Anfang an kontrolliert das ich den Richtigen Wert verwende wäre ich schon lange fertig gewesen :Facepalm: .
Naja Dummheit tut weh

Ich würde das einfach in ein Date-Objekt konvertieren und im gewünschten Format wieder ausgeben:

Function reformatDate(inputDate As String) As String
    reformatDate = Format(CDate(inputDate), "YYYY-MM-DD")
End Function