DateDiff-Funktion

Gibt einen Wert vom Datentyp Variant (Long) zurück, mit dem die Anzahl an Zeitintervallen zwischen zwei festgelegten Datumsangaben angegeben wird.

Syntax

DateDiff(interval, date1, date2, [ firstdayofweek, [ firstweekofyear ]] )

Die Syntax der DateDiff-Funktion verfügt über die folgenden benannten Argumente:

Komponente Beschreibung
Intervall Erforderlich. Zeichenfolgenausdruck, der für das Zeitintervall steht, das Sie zum Berechnen der Differenz zwischen date1 and date2 verwenden.
date1, date2 Erforderlich; Variant (Date). Zwei Datumsangaben, die Sie in der Berechnung verwenden möchten.
firstdayofweek Optional. Eine Konstante, die den ersten Tag der Woche angibt. Falls nicht angegeben, wird Sonntag angenommen.
firstweekofyear Optional. Eine Konstante, die die erste Woche des Jahres angibt. Wenn nicht angegeben, wird angenommen, dass die erste Woche die Woche um den 1. Januar ist.

Einstellungen

Das Argumentinterval hat die folgenden Einstellungen:

Einstellung Beschreibung
yyyy Jahr
q Quartal
m Monat
y Tag des Jahres
d Tag
w Wochentag
ww Woche
h Stunde
n Minute
s Sekunde

Das Argument firstdayofweek hat die folgenden Einstellungen:

Konstante Wert Beschreibung
vbUseSystem 0 NLS-API-Einstellung wird verwendet.
vbSunday 1 Sonntag (Standardeinstellung)
vbMonday 2 Montag
vbTuesday 3 Dienstag
vbWednesday 4 Mittwoch
vbThursday 5 Donnerstag
vbFriday 6 Freitag
vbSaturday 7 Samstag

Das Argument firstweekofyear hat die folgenden Einstellungen:

Konstante Wert Beschreibung
vbUseSystem 0 NLS-API-Einstellung wird verwendet.
vbFirstJan1 1 Beginnt mit der Woche, in der der 1. Januar enthalten ist (Standardeinstellung).
vbFirstFourDays 2 Beginnt mit der ersten Woche, bei der mindestens vier Tage im neuen Jahr liegen.
vbFirstFullWeek 3 Beginnt mit der ersten vollen Woche des Jahrs.

Hinweise

Sie können die DateDiff-Funktion verwenden, um zu ermitteln, wie viele angegebene Zeitintervalle zwischen zwei Datumsangaben vorhanden sind. Sie können DateDiff beispielsweise verwenden, um die Anzahl von Tagen zwischen zwei Datumsangaben oder die Anzahl von Wochen zwischen heute und dem Jahresende zu berechnen.

Um die Anzahl von Tagen zwischen date1 und date2 zu berechnen, können Sie entweder den „Day of year“ („y“) oder „Day“ („d“) verwenden. Wenn interval ist „Weekday“ („w“), gibt DateDiff die Anzahl von Wochen zwischen den beiden Datumsangaben zurück. Wenn date1 auf einen Montag fällt, zählt DateDiff die Anzahl von Montagen bis date2. date2 wird gezählt, aber nicht date1.

Wenn interval „Week“ („ww“) ist, gibt die DateDiff-Funktion aber die Anzahl von Kalenderwochen zwischen den beiden Datumsangaben zurück. Es wird die Anzahl von Sonntagen zwischen date1 und date2 gezählt. DateDiff zählt date2, wenn es auf einen Sonntag fällt, date1 wird aber nicht gezählt, auch wenn es auf einen Sonntag fällt.

Wenn date1 auf einen späteren Zeitpunkt als date2 verweist, gibt die DateDiff-Funktion eine negative Zahl zurück. Das Argument firstdayofweek wirkt sich auf Berechnungen aus, in denen die Intervallsymbole "w" und "ww" verwendet werden.

Wenn date1 oder date2 ein Datumsliteral ist, wird das angegebene Jahr zu einem dauerhaften Bestandteil dieses Datums. Wenn date1 oder date2 aber in doppelte Anführungszeichen eingeschlossen ist ("") und Sie das Jahr weglassen, wird jedes Mal, wenn das aktuelle Jahr in den Code eingefügt wird, der date1- oder date2-Ausdruck ausgewertet. Auf diese Weise können Sie Code schreiben, der in unterschiedlichen Jahren verwendet werden kann.

Wenn der 31. Dezember mit dem 1. Januar des unmittelbar folgenden Jahrs verglichen wird, gibt DateDiff für das Jahr ("yyyy") den Wert 1 zurück, obwohl nur ein Tag verstrichen ist.

Hinweis

Das für date1 and date2 angegebene Datum muss ein gregorianisches Datum sein, wenn die Einstellung der Calendar-Eigenschaft dem gregorianischen Kalender entspricht. Wenn es sich um einen Hijri-Kalender handelt, muss das angegebene Datum ein Hijri-Datum sein.

Beispiel

In diesem Beispiel wird die DateDiff-Funktion verwendet, um die Anzahl von Tagen zwischen einem bestimmten Datum und dem heutigen Datum anzuzeigen.

Dim TheDate As Date    ' Declare variables.
Dim Msg
TheDate = InputBox("Enter a date")
Msg = "Days from today: " & DateDiff("d", Now, TheDate)
MsgBox Msg

Siehe auch

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.