VBA DateSerial Function - Wie verwende ich die DateSerial-Funktion? (Beispiele)

Inhaltsverzeichnis

Excel VBA DateSerial-Funktion

Die DateSerial-Funktion in VBA gibt das Datum aus den von den Benutzern angegebenen Werten zurück. Wir müssen liefern, was das Jahr ist, was der Tag ist und was der Monat ist. Das Ergebnis basiert auf dem Datumsformat Ihres Systems.

Unten finden Sie die Syntax der DATESERIAL-Funktion .

# 1 - Jahr: Wir müssen die Ganzzahl als das Jahr eingeben? Bei der Angabe von Ganzzahlen müssen wir die folgenden Punkte berücksichtigen.

  • Wir können Nummern von 0 bis 9999 liefern.
  • Ein- und zweistellige Zahlen von 0 bis 99 werden von 1930 bis 2029 behandelt.
  • Die negative Ganzzahl wird vom Jahr 2000 abgezogen. Wenn Sie beispielsweise -1 angeben, ist das Ergebnis 1999 aufgrund von 2000 - 1 = 1999.

# 2 - Monat: Wir müssen die Ganzzahl als Monat eingeben. Bei der Eingabe dieser Nummer müssen wir die folgenden Punkte berücksichtigen.

  • Wir können nur Nummern von 1 bis 12 liefern.
  • Wenn der angegebene ganzzahlige Wert 0 ist, entspricht dies dem Monat „Dezember“ des Vorjahres.
  • Wenn der angegebene ganzzahlige Wert -1 ist, entspricht dies dem Monat „November“ des Vorjahres. Wenn der negative Wert steigt, repräsentiert er weiterhin den Monat des rückwärtigen Jahres.
  • Wenn die angegebene Nummer mehr als 12 beträgt, dh wenn die Nummer 13 ist, entspricht dies dem Monat „Januar“ des folgenden Jahres. Wenn die Zahl 14 ist, wird sie als der Monat „Februar“ des folgenden Jahres behandelt.

# 3 - Tag: Wir müssen die Ganzzahl als Tag eingeben. Bei der Eingabe dieser Nummer müssen wir die folgenden Punkte berücksichtigen.

  • Wir können ganzzahlige Zahlen von 1 bis 31 für aktuelle Monatstage eingeben.
  • Wenn die Zahl 0 ist, wird der letzte Tag des Vormonats dargestellt.
  • Wenn die Zahl -1 ist, repräsentiert dies den vorletzten Tag des Vormonats.
  • Wenn Sie den letzten Tag dieses Monats +1 angeben, entspricht dies dem ersten Tag des folgenden Monats. Wenn der letzte Tag im August beispielsweise 31 ist und Sie den Tag als 31 + 1 angeben, wird dies den ersten Tag im September darstellen.

Wie verwende ich die DATESERIAL-Funktion in VBA?

Beispiel 1

Um die DATESERIAL-Funktion zu verwenden, schreiben Sie den Makrocode.

Schritt 1: Unterprozedur starten

Erstellen Sie zunächst eine VBA-Unterprozedur, wie unten gezeigt.

Schritt 2: Variable deklarieren

Deklarieren Sie nun eine Variable als DATE.

Schritt 3: Weisen Sie dieser Variablen die DateSerial-Funktion zu.

Weisen Sie nun für diese Variable die Funktion DATESERIAL zu.

Schritt 4: Geben Sie nun die Werte für Jahr, Monat und Tag in die DateSerial-Funktion ein

Für JAHR Versorgung 2019, für MONAT Versorgung 08 und für TAG Versorgung 05.

Schritt 5: Ergebnis im Meldungsfeld anzeigen

Zeigen Sie nun das Ergebnis der Variablen "Mein Datum" im Meldungsfeld an.

Code:

Option Explicit Sub DateSerial_Example1 () Mydate als Datum dimmen Mydate = DateSerial (2019, 8, 5) MsgBox Mydate End Sub
Schritt 6: Führen Sie den Code aus

Führen Sie nun diesen Code aus, um das Datum unter dem Datum anzuzeigen.

Ergebnis sagt "8/5/2019". In meinem System hat das Datumsformat die Form „MM-TT-JJJJ“, weshalb das Ergebnis auch im gleichen Format vorliegt.

Wir können das Format des Datums auch mithilfe der FORMAT-Funktion in VBA ändern. Wenden Sie die FORMAT-Funktion wie folgt an.

Code:

Option Explicit Sub DateSerial_Example1 () Mydate als Datum dimmen Mydate = DateSerial (2019, 8, 5) MsgBox-Format (Mydate, "TT-MMM-JJJJ") End Sub

Dadurch wird das Format in „TT-MMM-JJJJ“ angewendet. Das Ergebnis ist wie folgt.

Beispiel 2

Wir können auch Variablen deklarieren und diese Variablen mit Werten versorgen. Schauen Sie sich zum Beispiel den folgenden Code an.

Code:

Sub DateSerial_Example2 () Dim Mydate As Date Dim MyYear As Integer Dim MyMonth As Integer Dim MyDay As Integer MyYear = 2019 MyMonth = 8 MyDay = 5 Mydate = DateSerial (MyYear, MyMonth, MyDay) MsgBox-Format (Mydate, "TT-MMM-JJJJ ") End Sub

Anstatt Jahr, Monat und Tag direkt an die DATESERIAL-Funktion zu übergeben, haben wir Variablen deklariert und ihnen Werte zugewiesen. Später haben wir der DATESERIAL-Funktion Variablen bereitgestellt.

Auf diese Weise können wir Variablen in VBA verwenden, um Werte zu speichern.

Beispiel 3

Jetzt werden wir mit dem Jahr experimentieren. Ich werde den Jahreswert als 1 zuweisen und das Ergebnis sehen.

Ein- und zweistellige Zahlen in JAHR stehen für ein Jahr von 1930 bis 2029. 01 bedeutet also 2001, 02 bedeutet 2002 und so weiter.

Lassen Sie uns nun die Monatszahl auf 0 ändern und das Ergebnis sehen.

Schauen Sie sich den Code hier an: Das Jahr ist 2019 und der Monat ist 0. Sehen Sie sich jedoch das Ergebnis an, auf dem der 05. Dezember 2019 steht, während ein geliefertes Jahr 2019 ist, dh 2018, dh das Vorjahr.

Dies liegt daran, dass die Funktion DATESERIAL, da wir den Monat als 0 angegeben haben, den Monat zum letzten Monat des Vorjahres nimmt und das Jahr auch entsprechend ändert.

Probieren Sie auf diese Weise verschiedene Zahlen aus, um die Auswirkungen der Funktion zu sehen.

Dinge, an die man sich erinnern sollte

  • Sie müssen wissen, welche Zahl für welches Jahr, welchen Monat und welche Kindertagesstätte steht. Lesen Sie die Syntaxerklärung sorgfältig durch, um sie zu verstehen.
  • Das Ergebnis basiert auf dem Datumsformat Ihres Systems. Wenn Sie ein geändertes Ergebnis wünschen, müssen Sie die FORMAT-Funktion anwenden und das Datumsformat nach Ihren Wünschen angeben.

Interessante Beiträge...