VBA-Format Datum - Wie ändere ich das Datumsformat im VBA-Code?

Inhaltsverzeichnis

Datum des Excel VBA-Formats

Um ein Datum in VBA zu formatieren, verwenden wir die eingebaute FORMAT-Funktion selbst. Sie verwendet die Eingabe als Datumsformat und gibt das gewünschte Format zurück. Die für diese Funktion erforderlichen Argumente sind der Ausdruck selbst und der Formattyp.

Die Formatierung von Datum und Uhrzeit ist in Excel ein heikles Thema, und das Gleiche gilt auch für VBA. Das Standarddatum und die Standardzeit basieren auf dem Systemdatum, an dem wir arbeiten. Dies kann von System zu System variieren. In diesem Artikel zeigen wir Ihnen verschiedene Techniken zum Formatieren von Daten mit VBA-Codes.

Um das Datumsformat mit VBA-Codierung zu ändern, müssen wir die Datumsformate und ihre Auswirkungen auf das Datum kennen.

Die folgende Tabelle zeigt die verschiedenen Datumsformatierungen und ihre Codes.

Wenn Sie also das obige Diagramm berücksichtigen, ist die Formatierung des Datums durch VBA-Codierung überhaupt keine schwierige Aufgabe.

Wie ändere ich das Datumsformat in VBA?

Nachfolgend finden Sie Beispiele für das Excel VBA-Datumsformat.

Beispiel 1

Zum Beispiel haben wir dasselbe Datum in mehreren Zellen des Arbeitsblatts, wie unten gezeigt.

Jetzt werden wir verschiedene Datumsformate für dasselbe Datum anwenden, um die Auswirkungen auf verschiedene Datumsformatcodes zu sehen.

Kopieren Sie zunächst dieselben Daten auch in die nächste Spalte, um die Auswirkungen zu sehen.

Für das erste Datum, dh Zelle A1, wenden wir das Format „TT-MM-JJJJ“ an .

Im Code müssen wir zuerst die Zelle mithilfe des RANGE- Objekts auswählen .

Code:

Sub Date_Format_Example1 () Range ("A1") End Sub

Da wir das Datumsformat der Zelle ändern, müssen wir auf die Eigenschaft " Number Format " des RANGE-Objekts zugreifen.

Code:

Sub Date_Format_Example1 () Range ("A1"). NumberFormat End Sub

Nach dem Zugriff auf „ Zahlenformat “ brauchen wir , indem das Gleichheitszeichen das Zahlenformat einstellen und den Formatcode in doppelten Anführungszeichen gelten.

Code:

Sub Date_Format_Example1 () Range ("A1"). NumberFormat = "tt-mm-jjj" 'Dadurch wird das Datum auf "23-10-2019" End Sub geändert

Wenn wir diesen Code ausführen, wird das Zahlenformat auf die Zelle A1 als " TT-MM-JJJ" angewendet.

Ausgabe:

Beispiel 2

In ähnlicher Weise habe ich auch andere Formatierungscodes für andere Zellen angewendet. Nachfolgend finden Sie den VBA-Code für Sie.

Code:

Sub Date_Format_Example2 () Range ("A1"). NumberFormat = "TT-MM-JJJ" Dies ändert das Datum in den Bereich "23-10-2019" ("A2"). NumberFormat = "TT-MM-JJJ" 'Dadurch wird das Datum in den Bereich "Mi-10-2019" ("A3") geändert. NumberFormat = "TTT-MM-JJJJ"' Dadurch wird das Datum in den Bereich "Mittwoch-10-2019" ("A4") geändert. .NumberFormat = "TT-MMM-JJJ" Dies ändert das Datum in den Bereich "23-Okt-2019" ("A5"). NumberFormat = "TT-MM-JJJJ" 'Dies ändert das Datum in "23-". Oktober-2019 "Bereich (" A6 "). NumberFormat =" TT-MM-JJ "Dies ändert das Datum in" 23-10-19 "Bereich (" A7 "). NumberFormat =" TTM MMJ JJJJ "'Dies ändert das Datum auf "Mi Okt 2019"Bereich ("A8"). NumberFormat = "TTTM MMM JJJJ" 'Dadurch wird das Datum auf "Mittwoch Oktober 2019" End Sub geändert

Das Ergebnis dieses Codes lautet wie folgt.

Ausgabe:

Ändern Sie das Datumsformat mithilfe der FORMAT-Funktion

In VBA haben wir eine Funktion namens FORMAT, mit der das gewünschte Format auf die Zelle angewendet werden kann.

Wir müssen nur angeben, was der Wert für "Ausdruck" ist, und das "Format" entsprechend anwenden.

Schauen Sie sich den folgenden Code für ein Beispiel an.

Code:

Sub Date_Format_Example3 () MyVal als Variante dimmen MyVal = 43586 MsgBox-Format (MyVal, "TT-MM-JJJJ") End Sub

Im obigen Code habe ich die Variable als Variante definiert (die einen beliebigen Wert enthalten kann).

Code:

Dim MyVal als Variante

Als nächstes habe ich für diese Variable den Wert 43586 zugewiesen.

Code:

MyVal = 43586

Next, in the message box, I have shown the result of the variable, but before we show the result, we have used the “FORMAT” function to format the value of the variable “MyVal,” and the format is given. “DD-MM-YYYY.”

Code:

MsgBox Format(MyVal, "DD-MM-YYY")

Ok, let’s run the code and see the result in the message box in VBA.

Output:

As you can see above, the result shows as “01-05-2019”.

Now you must be wondering we have supplied the serial number but the result showing as the date. This is because Excel stores the date as serial numbers, so the value 43586 is equal to the date “01-05-2019,” and if you increase the number by 1 i.e., 43587, the date will be “02-05-2019”.

Code:

Sub Date_Format_Example3 () MyVal als Variante dimmen MyVal = 43586 MsgBox-Format (MyVal, "TT-MM-JJJ") End Sub

Dinge, an die man sich erinnern sollte

  • Das Standarddatum Ihres Systems wird auch auf Ihr Excel angewendet.
  • Mit der Eigenschaft "Zahlenformat" können Sie das Datumsformat in VBA ändern.
  • Mit der FORMAT-Funktion können wir das Datumsformat ändern.
  • Excel speichert das Datum als Seriennummer. Wenn Sie das Datumsformat anwenden, wird es entsprechend angezeigt.

Interessante Beiträge...