Erstellen Sie mithilfe der Datumsfunktion eine Zeichenfolge mit vorangestellter Null für Tag und Monat.

Erstellen Sie mithilfe der Datumsfunktion eine Zeichenfolge mit vorangestellter Null für Tag und Monat.

Ich versuche, ein Datum in VBA zu erstellen. Als heutiges Datum soll 13.04.2018 angezeigt werden.

Allerdings kann ich es derzeit nur als 13.4.2018 anzeigen lassen

Wie füge ich bei einstelligen Tagen und Monaten eine vorangestellte Null ein?

Ich muss derzeit:

stDateDay = Day(Date)
stDateMonth = Month(Date)
stDateYear = Year(Date)
stDateFull = stDateDay & "." & stDateMonth & "." & stDateYear

Antwort1

Um ein Datum (oder einen anderen Wert) in VBA zu formatieren, können Sie die FormatFunktion verwenden. Beispiel:

strDateFull = Format(Date, "dd.mm.yyyy")

Der zweite Parameter ist eine Formatzeichenfolge, die entweder ein vordefinierter Formatname ( General Date, Long Date, Medium Dateoder Short Date) oder ein Formatbezeichner mit Symbolen wie dd, mmoder sein kann yy.

Eine vollständige Liste der Symbole finden Sie in der Dokumentation:https://msdn.microsoft.com/en-us/VBA/language-reference-vba/articles/format-function-visual-basic-for-applications

Antwort2

Sie können einfach Folgendes versuchen:

Range("A1").Value = Format(StDateFull, "dd.mm.yyyy")

Oder Sie können die Zelle oder den Zellbereich auch formatieren, bevor Sie ihr/ihm den StDateFull-Wert übergeben, wie:

Range("A1").NumberFormat = "dd.mm.yyyy"

Range("A:C").Select
Format$ ("dd.mm.yyyy")

Range("A1").value = stDateFull

verwandte Informationen