Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
604to608
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
604to608
604to608
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA Format-Funktion - eng. Datum

VBA Format-Funktion - eng. Datum
27.04.2005 14:46:59
Karl
Hallo,
ich bekomme von einer anderen Anwendung das Datum als String im Format "23 Mar 2003", also mit englischen Monatskürzeln, geliefert.
Nun möchte ich in einem Makro diesen String in ein Datum umwandeln. Die Formatfunktion erkennt den Ausdruck aber nur als Datum wenn ich das englische Kürzel "Mar" in das deutsche Kürzel "Mrz" ändere.
Gibt es eine Möglichkeit mit VBA diesen String in ein Datum umzuwandeln, _ohne_ vorher per Stringfunktionen die engl. durch deutsche Kürzel zu ersetzen (das Makro würde ja dann auf Rechnern mit anderen Spracheinstellung nicht laufen) ?
Vielen Dank für Eure Antworten,
Karl

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Format-Funktion - eng. Datum
27.04.2005 15:45:02
Werner
Grüezi Karl
Spalte Markieren
Berarbeiten - Ersetzen (z.B. Mar durch Mrz)
Das ganze kannst Du mit Makrorecorder aufzeichen, und alle Monate festlegen.
Gruss Werner
AW: VBA Format-Funktion - eng. Datum
27.04.2005 16:36:34
Karl
Hallo Werner,
erstmal Danke für Deine Anwort, leider löst sie mein Problem nicht. Wahrscheinlich hab ich mich etwas unklar ausgedrückt. Die Daten habe ich als ein Array von Strings in VBA vorliegen, brauche sie aber vom Type Date. Es tritt nun der Fall 2 (siehe angehangenes Codebeispiel) auf. Derzeit ersetze ich mit der Replace-Function "Mar" durch "Mrz". Allerdings habe ich die Befürchtung das auf einem nicht 'deutschem' Windows/Office-PC der Fall 1 zu einem Fehler führt und man quasi für jede Sprachversion ein extra Konvertierung der Daten programmieren müsste. Deshalb bin ich auf der Suche nach eine eleganteren Lösung.
Gruss,
Karl
Codebeispiel:
Dim dDate As Date
sString1 = "04 Mrz 2003"
sString2 = "04 Mar 2003"
'Fall 1
'Diese Zeile funktioniert
dDate = Format(sString1, "dd.mm.yyyy")
'Fall 2
'Diese Zeile bringt einen Laufzeitfehler da "Format" den String nicht als Datum erkennt
dDate = Format(sString2, "dd.mm.yyyy")
Anzeige
AW: VBA Format-Funktion - eng. Datum
27.04.2005 20:10:52
Ceyser
Hi Karl,
ich glaube nicht das es eine elegantere Lösung gibt. Allerdings müsstest Du nicht für
jede Srachversion eine Konvertierungsregel erstellen. Eigentlich nur für die Sprache,
in der das Datum übergeben wird. Dann ersetzt Du einfach den Monatsteil des Datums das
übergeben wird, durch das entsprechende Format das auf dem Rechner aktiv ist.
Gruß
CS

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige