Zwraca wariant (data) zawierający datę z dodanym określonym interwałem.
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 ma zostać dodany. |
number |
Argument wymagany. Wyrażenie liczbowe będące liczbą dodawanych interwałów. Dodatnia wartość dla dat w przyszłości lub ujemna dla dat z przeszłości. |
date |
Argument wymagany. Wariant (data) lub literał reprezentujący datę, do której jest dodawany interwał. |
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
Za pomocą tej DateAdd funkcji można dodawać lub odejmować od daty określony interwał. Na przykład można DateAdd użyć do obliczenia daty za 30 dni od dzisiaj lub godziny za 45 minut.
Aby dodać dni do datetabeli , możesz użyć argumentu Dzień roku ("y"), Dzień ("d") lub Dzień Tygowy ("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 zwraca DateAdd wartość 28-lut-95, a nie 31-lut-95. Jeśli date wartość to 31-sty-96, funkcja zwraca wartość 29-lut-96, ponieważ rok 1996 jest rokiem przestępnym.
Jeśli obliczona data poprzedza rok 100, co oznacza, że odejmuje się więcej lat niż w date, wystąpi błąd.
Jeśli number wartością nie jest długa, przed obliczeniem wyrażenia program Access zaokrągli ją do najbliższej liczby całkowitej.
Uwaga
Format wartości zwracanej przez argument jest DateAdd określany przez ustawienia Panel sterowania, a nie przez format przekazany date w argumencie.
Uwaga
W przypadku date, jeśli ustawieniem Calendar właściwości jest kalendarz gregoriański, podana data musi być gregoriańska. Jeśli kalendarz jest kalendarzem Hidżry, podana data musi być kalendarzem Hidżra. Jeśli wartościami miesięcy są nazwy, nazwa musi być zgodna z bieżącym Calendar ustawieniem właściwości. Aby ograniczyć prawdopodobieństwo wystąpienia konfliktów, wprowadzaj liczbowe wartości miesięcy w formacie Data krótka.
Przykłady kwerend
| Wyrażenie | Rezultat |
|---|---|
SELECT DateAdd("YYYY",1,[DateofSale]) AS Expr1 FROM ProductSales; |
Dodaje 1 rok do wartości dat w polu DateofSale . |
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 kodu 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 Informacje o języku VBA w programie Access.
W tym przykładzie data jest traktowana jako dane wejściowe, a następnie funkcja służy DateAdd do wyświetlania dopasowanej daty za określoną liczbę miesięcy.
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