Haben Sie auch schon vergebens versucht, unter deutschen Systemeinstellungen ein Datum auf angelsächsische Art und Weise mit der Format-Funktion zu formatieren? Der Versuch
Debug Print Format$(Now, "mm/dd/yyyy")
bringt leider nicht das gewünschte Ergebnis
01/23/2002
sondern liefert eine ungewollte Mischform:
01.23.2002
Dieses Ergebnis ist völlig korrekt - der Schrägstrich besagt als Formatierungsanweisung, dass das landesübliche Datums-Trennzeichen ausgegeben werden soll.
Nun könnten Sie ja einfach nachträglich die Punkte etwa mittels der Replace-Funktion durch die gewünschten Schrägstriche ersetzen:
Debug.Print Replace(Format$(Now, "mm/dd/yyyy"), ".", "/")
Doch können Sie sicher sein, dass tatsächlich Punkte erschienen sind, die ersetzt werden könnten? In manchen Ländern dient der Bindestrich zur Trennung, in manchen etwa das Hochkomma. Natürlich könnten Sie nun den Systemeinstellungen entnehmen, wie das Trennzeichen aktuell ausschaut (siehe "Heimatliche Zeichen"). Doch es geht noch ein wenig einfacher und eindeutiger.
Sie brauchen lediglich einen Backslash vor jeden Schrägstrich zu stellen, damit dieser selbst ausgegeben wird:
Debug Print Format$(Now, "mm\/dd\/yyyy")
Ein paar weitere Experimente werden Ihnen schnell zeigen, dass der Backslash generell dazu dient, ein an sich als Formatierungsanweisung verwendetes Zeichen selbst ausgeben zu können. Beispielsweise führt:
Debug.Print Format$(Now, "\Mo\nat m\/yyyy")
zur Ausgabe von:
Monat 1/2002
|