Zwraca wartość typu wariant (data) zawierającą datę z dodanym określonym interwałem czasu.
Składnia
DateAdd(interval, number, date)
Funkcja DateAdd ma następujące argumenty:
| Argument | Opis |
|---|---|
interval |
Argument wymagany. Wyrażenie ciągu będące interwałem czasu, który chcesz dodać. |
number |
Argument wymagany. Wyrażenie liczbowe będące liczbą interwałów, które chcesz dodać. Uzyskanie dat w przyszłości lub ujemnych w celu uzyskania dat z przeszłości może być pozytywne. |
date |
Argument wymagany. Wariant (data) lub literał reprezentujący datę dodania interwału. |
Ustawienia
Argument interval ma następujące ustawienia:
| Ustawienie | Opis |
|---|---|
yyyy |
Rok |
q |
Kwartał |
m |
Miesiąc |
y |
Dzień roku |
d |
Dzień |
w |
Weekday |
ww |
Tydzień |
h |
Godzina |
n |
Minuta |
s |
Sekunda |
Uwagi
Funkcji można używać DateAdd do dodawania lub odejmowania określonego interwału czasu od daty. Na przykład można obliczyć DateAdd datę 30 dni od dnia dzisiejszego lub godzinę 45 minut od teraz.
Aby dodać dni do datesystemu , możesz użyć funkcji Dzień roku ("y"), Dzień ("d") lub Dzień tygodnia ("w").
Funkcja DateAdd nie zwróci nieprawidłowej daty. W poniższym przykładzie do 31 stycznia dodano jeden miesiąc:
DateAdd("m", 1, "31-Jan-95")
W tym przypadku DateAdd zwraca wartość 28-lut-95, a nie 31-lut-95. Jeśli date jest to 31 sty 96, zwraca wartość 29 lutego 96, ponieważ rok 1996 jest rokiem przestępnym.
Jeśli data obliczeniowa poprzedza rok 100, co oznacza, że odejmujesz więcej lat niż wynosi date, występuje błąd.
Jeśli number nie jest to wartość typu Liczba długa, program Access zaokrągla ją do najbliższej liczby całkowitej, zanim zostanie obliczone wyrażenie.
Uwaga
Format zwracanej wartości DateAdd jest określany na podstawie ustawień Panel sterowania, a nie formatu przekazanego date w argumacie.
Uwaga
Calendar Jeśli dateustawieniem właściwości jest gregoriański, podanej datą musi być gregoriański. Jeśli kalendarz to Hidżry, podana data musi mieć wartość Hidżry. Jeśli wartościami miesiąca są nazwy, nazwa musi być zgodna z bieżącym Calendar ustawieniem właściwości. Aby zmniejszyć ryzyko konfliktów, wprowadź wartości liczbowe miesięcy w formacie Data krótka.
Przykłady zapytań
| Wyrażenie | Rezultat |
|---|---|
SELECT DateAdd("YYYY",1,[DateofSale]) AS Expr1 FROM ProductSales; |
Dodaje 1 rok do wartości dat w DateofSale polu. |
SELECT DateAdd("YYYY",-1,[DateofSale]) AS Expr1 FROM ProductSales; |
Odejmuje 1 rok od wartości dat w DateofSale polu. |
SELECT DateAdd("d",10,[DateofSale]) AS NewDate FROM ProductSales; |
Dodaje 10 dni do wartości dat w DateofSale polu i zwraca wyniki w kolumnie NewDate . |
SELECT DateAdd("ww",-1,[DateofSale]) AS NewDate FROM ProductSales; |
Odejmuje 1 tydzień lub 7 dni od wartości dat w DateofSale polu i zwraca wyniki w kolumnie NewDate . |
Przykład języka VBA
Uwaga
Poniższe przykłady przedstawiają sposób użycia tej funkcji w module języka Visual Basic for Applications (VBA). Aby uzyskać więcej informacji na temat pracy z językiem VBA, zobacz Dokumentacja języka VBA w programie Access.
Ten przykład przyjmuje datę jako dane wejściowe i używa DateAdd funkcji do wyświetlania pasującej daty o określonej liczbie miesięcy w przyszłości.
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