VBA DateDiff-Funktion

DateDiff-Beschreibung

Gibt die Differenz zwischen zwei Datumswerten basierend auf dem angegebenen Intervall zurück.

Einfache DateDiff-Beispiele

Hier ist ein einfaches DateDiff-Beispiel:

123 Sub DateDiff_Year()MsgBox DateDiff("yyyy", #1/1/2019#, #8/1/2021#)End Sub

Dieser Code gibt 2 zurück. Dies ist die Jahresdifferenz (angezeigt durch „yyyy“) zwischen 2 Tagen. (2021 - 2022 = 2)

Im obigen Beispiel ändern Sie die Positionen von date1 und date2.

123 Sub DateDiff_Year()MsgBox DateDiff("yyyy", #8/1/2021#, #1/1/2019#)End Sub

Dieser Code gibt -2 zurück.

DateDiff-Syntax

Im VBA-Editor können Sie „DateDiff(“ eingeben, um die Syntax für die DateDiff-Funktion anzuzeigen:

Die DateDiff-Funktion enthält 5 Argumente:

Intervall: Zeiteinheit (Tage, Monate, Jahre usw.). Geben Sie als Zeichenfolge ein. (z. B. „m“ für Monat)

Einstellung Beschreibung
yyyy Jahr
Q Quartal
m Monat
ja Tag des Jahres
D Tag
w Wochentag
ww Woche
h Stunde
n Minute
S Sekunde

Datum1, Datum2: Zwei Daten, die Sie in der Berechnung verwenden möchten.

Erster Tag der Woche: Eine Konstante, die den ersten Tag der Woche angibt. Dies ist optional. Wenn nicht angegeben, wird Sonntag angenommen.

Konstante Wert Beschreibung
vbUseSystem 0 Verwenden Sie die NLS-API-Einstellung.
vbSonntag 1 Sonntag (Standard)
vbMontag 2 Montag
vbDienstag 3 Dienstag
vbMittwoch 4 Mittwoch
vbDonnerstag 5 Donnerstag
vbFreitag 6 Freitag
vbSamstag 7 Samstag

ErsteWoche des Jahres: Eine Konstante, die die erste Woche des Jahres angibt. Dies ist optional. Wenn nicht angegeben, wird als erste Woche die Woche angenommen, in der der 1. Januar auftritt.

Konstante Wert Beschreibung
vbUseSystem 0 Verwenden Sie die NLS-API-Einstellung.
vbFirstJan1 1 Beginnen Sie mit der Woche, in der der 1. Januar auftritt (Standard).
vbFirstFourDays 2 Beginnen Sie mit der ersten Woche, die mindestens vier Tage im neuen Jahr hat.
vbErsteVollwoche 3 Beginnen Sie mit der ersten vollen Woche des Jahres.

VBA-Programmierung | Code Generator arbeitet für Sie!

Beispiele für Excel VBA DateDiff-Funktion

Referenzdaten

Zu Beginn werden wir verschiedene Möglichkeiten zum Referenzieren von Datumsangaben mithilfe der VBA DateDiff-Funktion demonstrieren.

Jede dieser DateDiff-Funktionen liefert das gleiche Ergebnis:

123456789 Sub DateDiff_ReferenceDates()MsgBox DateDiff("m", #4/1/2019#, #8/1/2021#)MsgBox DateDiff("m", DateSerial(2019, 4, 1), DateSerial(2021, 8, 1))MsgBox DateDiff("m", DateValue("1. April 2022"), DateValue("1. August 2022"))End Sub

Oder Sie können auf Zellen verweisen, die Datumsangaben enthalten:

12345 Sub DateDiff_ReferenceDates_Cell()MsgBox DateDiff("m", Range("C2").Value, Range("C3").Value)End Sub

Oder erstellen und referenzieren Sie Datumsvariablen:

123456789 Sub DateDiff_Variable()Dim dt1 als Datum, dt2 als Datumdt1 = #4/1/2019#dt2 = #8/1/2021#MsgBox DateDiff("m", dt1, dt2)End Sub

Sind Sie es leid, nach VBA-Codebeispielen zu suchen? Probieren Sie AutoMacro aus!

Verwenden verschiedener Intervalleinheiten

Viertel

123 Sub DateDiff_Quarter()MsgBox "die Anzahl der Quartale: " & DateDiff("q", #1/1/2019#, #1/1/2021#)End Sub

Monate

123 Sub DateDiff_Month()MsgBox "die Anzahl der Monate: " & DateDiff("m", #1/1/2019#, #1/1/2021#)End Sub

Tage

123 Sub DateDiff_Day()MsgBox "die Anzahl der Tage: " & DateDiff("d", #1/1/2019#, #1/1/2021#)End Sub

Wochen

123 Sub DateDiff_Week()MsgBox "die Anzahl der Wochen: " & DateDiff("w", #1/1/2019#, #1/1/2021#)End Sub

Std

123456789101112 Sub DateDiff_Hour()Dim dt1 als Datumdt2 als Datum dimmenDim nDiff As Longdt1 = 14.08.2019 9:30:00 #dt2 = 14.08.2019 13:00:00#nDiff = DateDiff("h", dt1, dt2)MsgBox "Stunden: " & nDiffEnd Sub

Protokoll

123 Sub DateDiff_Minute()MsgBox "mins: " & DateDiff("n", #8/14/2019 9:30:00#, #8/14/2019 9:35:00#)End Sub

Sekunden

123 Sub DateDiff_Second()MsgBox "secs: " & DateDiff("s", #8/14/2019 9:30:10 AM#, #8/14/2019 9:30:22#)End Sub

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave