返回一个 Variant (Integer) 值,其中包含给定日期的指定部分。
警告 使用此函数时存在问题。 某些日历年的最后一个星期一可以返回为第 53 周,而该周应为第 1 周。 有关详细信息和解决方法,请参阅 Format 或 DatePart 函数可能返回错误的年份中上周一的周数。 |
语法
DatePart ( interval、date [, firstdayofweek] [, firstweekofyear] )
DatePart 函数语法具有以下参数:
参数 |
说明 |
interval |
必需。 要返回的时间间隔的字符串表达式。 |
date |
必需。 变量 (日期) 要计算的值。 |
firstdayofweek |
可选。 指定每周第一天的 常量 。 如果未指定,则假定为星期日。 |
firstweekofyear |
可选。 一个指定一年的第一周的常量。 如果未指定,则假定第一周是 1 月 1 日发生的周。 |
设置
interval 参数具有以下设置:
设置 |
说明 |
yyyy |
年 |
q |
季度 |
m |
月 |
y |
一年中的某一天 |
d |
日 |
w |
Weekday |
ww |
周 |
h |
小时 |
n |
分钟 |
s |
秒 |
firstdayofweek 参数具有以下设置:
常数 |
值 |
说明 |
vbUseSystem |
0 |
使用 NLS API 设置。 |
vbSunday |
1 |
周日 (默认) |
vbMonday |
2 |
星期一 |
vbTuesday |
3 |
星期二 |
vbWednesday |
4 |
星期三 |
vbThursday |
5 |
星期四 |
vbFriday |
6 |
星期五 |
vbSaturday |
7 |
星期六 |
firstweekofyear 参数具有以下设置:
常数 |
值 |
说明 |
vbUseSystem |
0 |
使用 NLS API 设置。 |
vbFirstJan1 |
1 |
从默认) (1 月 1 日发生的周开始。 |
vbFirstFourDays |
2 |
从新年至少有四天的第一周开始。 |
vbFirstFullWeek |
3 |
从一年中的第一个整周开始。 |
备注
可以使用 DatePart 函数计算日期并返回特定的时间间隔。 例如,可以使用 DatePart 计算星期几或当前小时。
firstdayofweek 参数影响使用“w”和“ww”间隔符号的计算。
如果 date 是 日期字符串 ,则指定的年份将成为该日期的永久部分。 但是,如果 日期 用双引号 (“) ”括起来,并且省略了年份,则每次计算日期表达式时,都会在代码中插入当前 年份 。 这样就可以编写可在不同年份使用的代码。
注意: 对于 日期,如果 Calendar 属性设置为公历,则提供的日期必须为公历。 如果日历为 Hijri,则提供的日期必须为 Hijri。
返回的日期部分位于当前阿拉伯历的时间段单位中。 例如,如果当前日历为 Hijri,而要返回的日期部分是年份,则年份值为 Hijri 年份。
查询示例
Expression |
结果 |
SELECT DatePart (“yyyy”,[DateofSale]) AS NewDate FROM ProductSales; |
返回字段“DateofSale”的日期值的“Year”。 |
SELECT DatePart (“q”,[DateofSale]) AS NewDate FROM ProductSales; |
根据“DateofSale”字段的日期值的日历年) 返回“Quarter” (。 |
SELECT DatePart (“y”,[DateofSale]) AS NewDate FROM ProductSales; |
返回字段“DateofSale”的日期值 (1 到 365) 的“年度日期”。 |
SELECT DatePart (“d”,[DateofSale]) AS NewDate FROM ProductSales; |
返回字段“DateofSale”的日期值的“Day”。 |
SELECT DatePart (“w”,[DateofSale]) AS NewDate FROM ProductSales; |
返回从 1 到 7 的“工作日” (,其中 1 表示字段“DateofSale”的日期值的 Sunday) 。 |
SELECT DatePart (“ww”,[DateofSale]) AS NewDate FROM ProductSales; |
返回字段“DateofSale”的日期值的 1 到 52) 的“周数” (。 |
SELECT DatePart (“h”,[DateTime]) AS NewDate FROM ProductSales; |
返回字段“DateTime”的日期值的“Hour”。 |
SELECT DatePart (“n”,[DateTime]) AS NewDate FROM ProductSales; |
返回字段“DateTime”的日期值的“分钟”。 |
SELECT DatePart (“s”,[DateTime]) AS NewDate FROM ProductSales; |
返回字段“DateTime”的日期值的“秒”。 |
VBA 示例
注意: 下面的示例演示了如何在 Visual Basic for Applications (VBA) 模块中使用此函数。 有关使用 VBA 的详细信息,请在搜索旁边的下拉列表中选择“开发人员参考”,并在搜索框中输入一个或多个术语。
此示例采用日期,并使用 DatePart 函数显示该日期所在的年份的季度。
Dim TheDate As Date ' Declare variables.
Dim Msg TheDate = InputBox("Enter a date:") Msg = "Quarter: " & DatePart("q", TheDate) MsgBox Msg