Функция DatePart

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

Возвращает значение типа Variant (Integer), содержащее указанную часть заданной даты.

Предупреждение Существует проблема с использованием этой функции. Последний понедельник в некоторых календарных годах может быть возвращен как неделя 53, когда это должна быть неделя 1. Дополнительные сведения и обходной путь см. в статье Функции формат или DatePart могут возвращать неправильный номер недели для последнего понедельника в году.

Синтаксис

DatePart(interval, date [, firstdayofweek] [, firstweekofyear] )

Аргументы функции DatePart :

Аргумент Описание
интервал — обязательный аргумент. Строковое выражение, которое представляет собой интервал времени, который требуется вернуть.
Дата — обязательный аргумент. Значение Variant (Date), которое требуется вычислить.
первый_день_недели — необязательный аргумент. Константой, указывающей первый день недели. Если не указано, предполагается воскресенье.
первая_неделя_года Необязательный аргумент. Константа, задающая первую неделю года. Если не указано, предполагается, что первая неделя будет неделей, в которую приходится 1 января.

Параметры

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

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

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

Константа Значение Описание
vbUseSystem 0 Используются параметры API NLS.
vbSunday 1 Воскресенье (по умолчанию)
vbMonday 2 Понедельник
vbTuesday 3 Вторник
vbWednesday 4 Среда
vbThursday 5 Четверг
vbFriday 6 Пятница
vbSaturday 7 Суббота

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

Константа Значение Описание
vbUseSystem 0 Используются параметры API NLS.
vbFirstJan1 1 Начинается с недели, на которую приходится 1 января (по умолчанию).
vbFirstFourDays 2 Первой неделей считается та, которая содержит хотя бы четыре дня нового года.
vbFirstFullWeek 3 Первой неделей считается первая полная неделя года.

Замечания

Функцию DatePart можно использовать для вычисления даты и возврата определенного интервала времени. Например, можно использовать DatePart для вычисления дня недели или текущего часа.

Аргумент firstdayofweek влияет на вычисления, использующие символы интервала "w" и "ww".

Если date является литералом даты, указанный год становится постоянной частью этой даты. Однако если дата заключена в двойные кавычки (""), а год опускается, текущий год вставляется в код при каждом вычислении выражения даты . Это позволяет писать код, который можно использовать для разных лет.

Примечание

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

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

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

Выражение Результаты
SELECT DatePart("yyyy",[DateofSale]) AS NewDate FROM ProductSales; Возвращает значение Year значений даты поля DateofSale.
SELECT DatePart("q",[DateofSale]) AS NewDate FROM ProductSales; Возвращает значение "Квартал" (на основе года календаря) значений даты поля "DateofSale".
SELECT DatePart("y",[DateofSale]) AS NewDate FROM ProductSales; Возвращает значение "День года" (от 1 до 365) значений даты поля "DateofSale".
SELECT DatePart("d",[DateofSale]) AS NewDate FROM ProductSales; Возвращает значение Day значений даты поля DateofSale.
SELECT DatePart("w",[DateofSale]) AS NewDate FROM ProductSales; Возвращает значение "День недели" (от 1 до 7, где 1 представляет воскресенье) значений даты в поле "DateofSale".
SELECT DatePart("ww",[DateofSale]) AS NewDate FROM ProductSales; Возвращает число недели (от 1 до 52) значений даты в поле DateofSale.
SELECT DatePart("h",[DateTime]) AS NewDate FROM ProductSales; Возвращает значение "Hour" значений даты поля "DateTime".
SELECT DatePart("n",[DateTime]) AS NewDate FROM ProductSales; Возвращает значение "Minutes" значений даты поля "DateTime".
SELECT DatePart("s",[DateTime]) AS NewDate FROM ProductSales; Возвращает "секунды" значений даты поля "DateTime".

Пример VBA

Примечание

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

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

Dim TheDate As Date    ' Declare variables.
Dim Msg    
TheDate = InputBox("Enter a date:")
Msg = "Quarter: " & DatePart("q", TheDate)
MsgBox Msg

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