Функция DateAdd

Применяется к
Access для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Возвращает значение типа Variant (Date), содержащее результат прибавления к дате указанного интервала времени.

Синтаксис

DateAdd(interval, number, date)

Функция DateAdd имеет следующие аргументы:

Аргумент Описание
интервал Обязательный аргумент. Строковое выражение, обозначающее интервал времени, который требуется прибавить.
Число Обязательный аргумент. Числовое выражение, обозначающее количество интервалов, которые требуется прибавить. Может принимать положительное (для получения будущих дат) или отрицательное (для получения прошедших дат) значение.
дата Обязательный аргумент. Значение типа Variant (Date) или литерал, представляющие дату, к которой добавляется интервал.

Параметры

Аргумент intervalимеет следующие параметры:

Параметр Описание
yyyy Год
q Квартал
m Месяц
y День года
d День
w День недели
ww Неделя
h Часы
n Минуты
s Секунды

Замечания

Функция DateAdd используется для добавления указанного интервала времени к дате или его вычитания из него. Например, функцию DateAdd можно применять, чтобы вычислить дату, отстоящую на 30 дней от сегодняшнего дня, или время через 45 минут.

Для добавления дней к дате можно использовать день года ("y"), день ("d") или день недели ("w").

Функция DateAdd всегда возвращает допустимую дату. В следующем примере к 31 января прибавляется 1 месяц:


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

В данном случае DateAdd возвращает 28-фев-95, а не 31-фев-95. Если дата 31 января-96, она возвращает 29-февраль-96, потому что 1996 год является високосным годом.

Если вычисляемая дата будет предшествовать 100 году (то есть вычитается больше лет, чем в дате), возникает ошибка.

Если число не является длинным значением, перед вычислением оно округляется до ближайшего целого числа.

Примечание

Формат возвращаемого значения для DateAdd определяется панель управления параметрами, а не форматом, передаваемым в аргументе date.

Примечание

Если в свойстве Calendar задан григорианский календарь, аргумент дата следует указывать соответствующим образом. Если используется календарь Хиджра, дата должна соответствовать ему. Если значением месяца является название, оно должно соответствовать текущим параметрам свойства Calendar. Чтобы уменьшить вероятность несоответствия названий месяцев текущим параметрам свойства Calendar, вводите числовые значения месяцев (используйте краткий формат даты).

Примеры запросов

Выражение Результаты
SELECT DateAdd("YYYY";1;[DateofSale]) AS Expr1 FROM ProductSales; Возвращает результаты, добавляя 1 год к значениям даты поля DateofSale.
SELECT DateAdd("YYYY",-1,[DateofSale]) AS Expr1 FROM ProductSales; Возвращает результаты, вычитая 1 год из значений даты поля DateofSale.
SELECT DateAdd("d";10;[DateofSale]) AS NewDate FROM ProductSales; Возвращает результаты в столбце NewDate, добавляя 10 дней к значениям даты поля DateofSale.
SELECT DateAdd("ww",-1,[DateofSale]) AS NewDate FROM ProductSales; Возвращает результаты в столбце NewDate, вычитая 1 неделю (7 дней) из значений даты поля DateofSale.

Пример VBA

Примечание

В примерах ниже показано, как использовать эту функцию в модуле Visual Basic для приложений (VBA). Дополнительные сведения о работе с VBA см. в справочнике по VBA access.

В этом примере дата используется в качестве входных данных, и к ней с помощью функции DateAdd прибавляется указанное число месяцев, после чего отображается соответствующая дата в будущем.


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

См. также

Выбор правильной функции даты