Funkcja DateAdd

Dotyczy
Access dla Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

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

Zobacz również

Wybieranie odpowiedniej funkcji daty