So konvertieren Sie eine DB2-Datum-Uhrzeit-Zeichenfolge in ein Excel-Datum
Werde ich regelmäßig einen Extrakt aus einer DB/2-Datenbank mit Terminen und timestaps wie folgt formatiert:
2002-01-15-00.00.00.000000
2008-01-05-12.36.05.190000
9999-12-31-24.00.00.000000
Gibt es einen einfacheren Weg, um zu konvertieren diese in das Excel-Datumsformat als das zerlegen mit Teilstrings?
DB2date = DateValue(Left(a, 4) + "/" + Mid(a, 6, 2) + "/" + Mid(a, 9, 2))
vielen Dank für Ihre Hilfe!
Ich bin mit französischen, deutschen und englischen Versionen von Excel parallel, erwarte ich, dass einige Probleme mit dem format der Bisse, wenn ich es in einer Formel
InformationsquelleAutor Oli | 2008-10-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist nicht klar, ob Sie sprechen über Formel-Funktionen oder VBA-Funktionen.
Formel Funktionen
Nicht die DateValue-Funktion, die erwartet einen string und verwenden Sie die Date-Funktion, die erwartet numerischen Jahr, Monat, Tag:
vorausgesetzt, dass das Datum als string in A1.
VBA-Funktionen
Ähnliche Berechnung wie oben, nur mit der DateSerial - Funktion statt:
InformationsquelleAutor tzot
Ich bin sicher, Sie könnten Kochen, etwas mit Regex ' s, wenn Sie wirklich gepflegt an. Es wäre nicht "besser", obwohl, wahrscheinlich noch schlimmer.
Wenn Sie verzeihen werde, ein bisschen C# (ich havn ' T berührt VB in den Jahren, ich weiß also nicht, ruft die Funktion mehr), könnten Sie auch tun:
Aber wieder, du bist nicht wirklich gewinnen etwas. Können Sie ein Beispiel geben, wo Sie Ihren aktuellen code zu brechen?
InformationsquelleAutor Matthew Scharley
in VBA
dateValue()
konvertieren kann den ersten Teil der Zeichenfolge in ein Datum:Also der richtige Weg, um bekommen es nicht, Sie werden
Dieser wird Ihnen immer die richtige Antwort, solange DB2 Ihnen immer ein "JJJJ-MM-TT" das Datum. Das format des Ergebnisses (TT/mm/JJ, mm-ddd-yyyy, usw.) hängt von den lokalen Einstellungen Ihres Computers/spezifische Einstellungen für Ihr Handy.
Wenn Sie möchten, extrahieren Sie die "Zeit" Teil des Strings ist, gibt es dieses
timeValue()
Funktion, wird schließlich machen Sie den job.InformationsquelleAutor Philippe Grondier
Wenn Sie wollen, um die Zeit beinhalten, die Informationen, die Sie haben, mehr zu tun; DateValue verwirft Sie.
TimeValue beurteilen kann Zeit Teil nach unten, um Sekunden, so können Sie Sie hinzufügen:
Aber Ihre sample-Daten stellt ein weiteres problem: Sie hat sowohl Zeit-Werte "00.00.00" und "24.00.00".
Die zweite gags die TimeValue-Funktion, so dass Sie brauchen, um code für den speziellen Fall.
InformationsquelleAutor blairxy