DateAdd (Funktion)

Gilt für
Access für Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Gibt einen Wert des Typs Variant (Date) mit einem Datum zurück, dem ein angegebenes Zeitintervall hinzugefügt wurde.

Syntax

DateAdd(interval, number, date)

Die Syntax der Funktion DateAdd weist die folgenden Argumente auf:

Argument Beschreibung
Intervall Erforderlich. Zeichenfolgenausdruck, bei dem es sich um das Zeitintervall handelt, das hinzugefügt werden soll.
Zahl Erforderlich. Numerischer Ausdruck, der die Anzahl der hinzuzufügenden Intervalle darstellt. Er kann positiv (zum Abrufen von Datumswerten in der Zukunft) oder negativ (zum Abrufen von Datumswerten in der Vergangenheit) sein.
Datum Erforderlich. Wert des Typs Variant (Date) oder ein Literal, der das Datum darstellt, dem das Intervall hinzugefügt wird.

Einstellungen

Das Interval-Argumentverfügt über 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

Hinweise

Mit der DateAdd-Funktion können Sie ein bestimmtes Zeitintervall zu einem Datum hinzufügen oder abziehen. Beispielsweise bietet DateAdd die Möglichkeit, ein Datum zu berechnen, das 30 Tage in der Zukunft liegt, oder eine Uhrzeit, die 45 Minuten in der Zukunft liegt.

Zum Hinzufügen von Tagen zum Datum können Sie Tag des Jahres ("y"), Tag ("d") oder Wochentag ("w") verwenden.

Die DateAdd-Funktion gibt kein ungültiges Datum zurück. Im folgenden Beispiel wird am 31. Januar ein Monat hinzugefügt:


DateAdd("m", 1, "31-Jan-95")

In diesem Fall gibt DateAdd 28-Feb-95 und nicht 31-Feb-95 zurück. Wenn date 31-Jan-96 ist, wird 29-Feb-96 zurückgegeben, da 1996 ein Schaltjahr ist.

Wenn das berechnete Datum dem Jahr 100 vorausgeht (d. h., Sie subtrahieren mehr Jahre als datum), tritt ein Fehler auf.

Wenn number kein Long-Wert ist, wird sie vor der Auswertung auf die nächste ganze Zahl gerundet.

Hinweis

Das Format des Rückgabewerts für DateAdd wird durch Systemsteuerung Einstellungen bestimmt, nicht durch das Format, das im argument date übergeben wird.

Hinweis

Das für Datum 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. Wenn die Monatswerte in Namen angegeben werden, müssen die Namen der aktuellen Einstellung der Calendar-Eigenschaft entsprechen. Um das Risiko zu minimieren, dass die Monatsnamen und die aktuelle Einstellung der Calendar-Eigenschaft kollidieren, geben Sie numerische Monatswerte ein (kurzes Datumsformat).

Abfragebeispiele

Ausdruck Ergebnisse
SELECT DateAdd("YYYY",1,[DateofSale]) AS Expr1 FROM ProductSales; Gibt die Ergebnisse zurück, indem den Datumswerten des Felds "DateofSale" 1 Jahr hinzugefügt wird.
SELECT DateAdd("JJJJ",-1,[DateofSale]) AS Expr1 FROM ProductSales; Gibt die Ergebnisse zurück, indem 1 Jahr zu den Datumswerten des Felds "DateofSale" subtrahiert wird.
SELECT DateAdd("d";10,[DateofSale]) AS NewDate FROM ProductSales; Gibt die Ergebnisse in der Spalte "NewDate" zurück, indem den Datumswerten des Felds "DateofSale" 10 Tage hinzugefügt werden.
SELECT DateAdd("ww",-1,[DateofSale]) AS NewDate FROM ProductSales; Gibt die Ergebnisse in der Spalte "NewDate" zurück, indem 1 Woche (7 Tage) von den Datumswerten des Felds "DateofSale" subtrahiert wird.

VBA-Beispiel

Hinweis

Die folgenden Beispiele zeigen die Verwendung dieser Funktion in einem VBA-Modul (Visual Basic for Applications). Weitere Informationen zum Arbeiten mit VBA finden Sie unter Zugreifen auf VBA-Referenz.

In diesem Beispiel wird ein Datum verwendet und mithilfe der DateAdd-Funktion ein entsprechendes Datum angezeigt, das eine bestimmte Anzahl von Monaten in der Zukunft liegt.


Dim FirstDate As Date    ' Declare variables.
Dim IntervalType As String
Dim Number As Integer
Dim Msg
IntervalType = "m"    ' "m" specifies months as interval.
FirstDate = InputBox("Enter a date")
Number = InputBox("Enter number of months to add")
Msg = "New date: " & _
    DateAdd(IntervalType, Number, FirstDate)
MsgBox Msg

Siehe auch

Auswählen der richtigen Datumsfunktion