Возвращает значение типа Variant (Integer), содержащее указанную часть заданной даты.
Предупреждение Проблема с использованием этой функции. Последний понедельник в некоторых календарных годах может быть возвращен как неделя 53, если она должна быть неделей 1. Дополнительные сведения и обходное решение см. в функциях Format и DatePart, которые возвращают неправильный номер недели для последнего понедельника года. |
Синтаксис
DatePart (интервал, дата [, первый деньofweek] [, первая двенедели ] )
Аргументы функции DatePart:
Аргумент |
Описание |
интервал |
Обязательный аргумент. Строкное выражение, которое является интервалом времени, который необходимо возвратить. |
дата |
Обязательный аргумент. Значение Variant(Date),которое вы хотите высмеять. |
первый_день_недели |
Необязательный аргумент. Константа, задающая первый день недели. Если не указано, предполагается воскресенье. |
первая_неделя_года |
Необязательный аргумент. Константа, задающая первую неделю года. Если не указано, первой считается неделя, на которую вы хотите 1 января. |
Параметры
Аргумент интервала имеет указанные здесь параметры.
Параметр |
Описание |
yyyy |
Год |
q |
Квартал |
m |
Месяц |
y |
День года |
d |
День |
w |
День недели |
ww |
Неделя |
h |
Часы |
n |
Минуты |
s |
Секунды |
Аргумент первый_день_недели может принимать следующие значения:
Константа |
Значение |
Описание |
vbUseSystem |
0 |
Используются параметры API NLS. |
vbSunday |
1 |
Воскресенье (по умолчанию) |
vbMonday |
2 |
Понедельник |
vbTuesday |
3 |
Вторник |
vbWednesday |
4 |
Среда |
vbThursday |
5 |
Четверг |
vbFriday |
6 |
Пятница |
vbSaturday |
7 |
Суббота |
Первая две недели аргумента имеет указанные здесь параметры.
Константа |
Значение |
Описание |
vbUseSystem |
0 |
Используются параметры API NLS. |
vbFirstJan1 |
1 |
Начинается с недели, на которую приходится 1 января (по умолчанию). |
vbFirstFourDays |
2 |
Первой неделей считается та, которая содержит хотя бы четыре дня нового года. |
vbFirstFullWeek |
3 |
Первой неделей считается первая полная неделя года. |
Замечания
Функцию DatePart можно использовать для оценки даты и возврата за определенный интервал времени. Например, с помощью DatePart можно вычислить день недели или текущий час.
Аргумент первый_день_недели влияет на вычисления, если заданы значения "w" и "ww".
Если date является литерал даты, указанный год становится постоянной частью этой даты. Однако если дата заключена в двойные кавычка (" ") и год не введен, при каждой проверке выражения даты в коде вставляется текущий год. Это позволяет писать код, который можно использовать для разных лет.
Примечание: Если в свойстве Calendar задан григорианский календарь, аргумент дата следует указывать соответствующим образом. Если используется календарь Хиджра, дата должна соответствовать ему.
Возвращаемая часть даты находится в единицах времени текущего арабского календаря. Например, если текущим календарем является Хиджра, а возвращаемой частью даты — год, значение года будет соответствовать году в календаре Хиджра.
Примеры запросов
Выражение |
Результаты: |
SELECT DatePart("yyyy",[DateofSale]) AS NewDate FROM ProductSales; |
Возвращает год значений дат в поле "DateofSale". |
SELECT DatePart("q",[DateofSale]) AS NewDate FROM ProductSales; |
Возвращает "Квартал" (с учетом года выжидателя) значений дат в поле "DateofSale". |
SELECT DatePart("y",[DateofSale]) AS NewDate FROM ProductSales; |
Возвращает значение "День года" (от 1 до 365) значений дат в поле "ДатаofSale". |
SELECT DatePart("d",[DateofSale]) AS NewDate FROM ProductSales; |
Возвращает значение "День" для значений дат в поле "DateofSale". |
SELECT DatePart("w",[DateofSale]) AS NewDate FROM ProductSales; |
Возвращает значение "День недели" (от 1 до 7, где 1 представляет воскресенье) значений даты в поле "ДатаofSale". |
SELECT DatePart("ww",[DateofSale]) AS NewDate FROM ProductSales; |
Возвращает значение "Номер недели" (от 1 до 52) значений дат в поле "ДатаofSale". |
SELECT DatePart("h",[DateTime]) AS NewDate FROM ProductSales; |
Возвращает значение "Час" для значений даты в поле "Дата и время". |
SELECT DatePart("n";[DateTime]) AS NewDate FROM ProductSales; |
Возвращает значение "Минуты" значений даты в поле "Дата и время". |
SELECT DatePart("s";[DateTime]) AS NewDate FROM ProductSales; |
Возвращает "секунды" значений даты в поле "Дата и время". |
Пример 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