DatePart 函数 (Visual Basic)
更新:2007 年 11 月
返回一个 Integer 值,其中包含给定 Date 值的指定组件。
Public Overloads Function DatePart( _
ByVal Interval As DateInterval, _
ByVal DateValue As DateTime, _
Optional ByVal FirstDayOfWeekValue As FirstDayOfWeek = VbSunday, _
Optional ByVal FirstWeekOfYearValue As FirstWeekOfYear = VbFirstJan1 _
) As Integer
' -or-
Public Overloads Function DatePart( _
ByVal Interval As String, _
ByVal DateValue As Object, _
Optional ByVal DayOfWeek As FirstDayOfWeek = FirstDayOfWeek.Sunday, _
Optional ByVal WeekOfYear As FirstWeekOfYear = FirstWeekOfYear.Jan1 _
) As Integer
参数
Interval
必选。DateInterval 枚举值或 String 表达式,它表示要返回的日期/时间值部分。DateValue
必选。所要计算的 Date 值。FirstDayOfWeekValue, DayOfWeek
可选项。从 FirstDayOfWeek 枚举选择的值,指定一周的第一天。如果未指定,则使用 FirstDayOfWeek.Sunday。FirstWeekOfYearValue, WeekOfYear
可选项。从 FirstWeekOfYear 枚举选择的值,指定一年的第一周。如果未指定,则使用 FirstWeekOfYear.Jan1。
设置
Interval 参数可以有以下设置之一。
枚举值 |
字符串 |
所要返回的日期/时间值部分 |
---|---|---|
DateInterval.Day |
d |
月中的哪一天(从 1 到 31) |
DateInterval.DayOfYear |
y |
年中的哪一天(从 1 到 366) |
DateInterval.Hour |
h |
小时 |
DateInterval.Minute |
n |
分钟 |
DateInterval.Month |
m |
月 |
DateInterval.Quarter |
q |
季度 |
DateInterval.Second |
s |
秒 |
DateInterval.Weekday |
w |
星期几(从 1 到 7) |
DateInterval.WeekOfYear |
ww |
年中的哪一周(从 1 到 53) |
DateInterval.Year |
yyyy |
年份 |
FirstDayOfWeekValue 参数可以有以下设置之一。
枚举值 |
值 |
说明 |
---|---|---|
FirstDayOfWeek.System |
0 |
系统设置中指定的周的第一天 |
FirstDayOfWeek.Sunday |
1 |
星期日(默认) |
FirstDayOfWeek.Monday |
2 |
星期一(依照 ISO 8601 标准第 3.17 节) |
FirstDayOfWeek.Tuesday |
3 |
星期二 |
FirstDayOfWeek.Wednesday |
4 |
星期三 |
FirstDayOfWeek.Thursday |
5 |
星期四 |
FirstDayOfWeek.Friday |
6 |
星期五 |
FirstDayOfWeek.Saturday |
7 |
星期六 |
FirstWeekOfYearValue 参数可以有以下设置之一。
枚举值 |
值 |
说明 |
---|---|---|
FirstWeekOfYear.System |
0 |
系统设置中指定的年的第一周 |
FirstWeekOfYear.Jan1 |
1 |
1 月 1 日所在的周(默认) |
FirstWeekOfYear.FirstFourDays |
2 |
至少有四天属于新年的周(依照 ISO 8601 标准第 3.17 节) |
FirstWeekOfYear.FirstFullWeek |
3 |
新年的第一个全周 |
异常
异常类型 |
错误号 |
条件 |
---|---|---|
Interval 无效。 |
||
DateValue 并不强制为 Date。 |
如果正在升级使用无结构错误处理的 Visual Basic 6.0 应用程序,请参见“错误号”一列。(您可以根据 Number 属性(Err 对象)比较错误号。)然而,如果可能,应当考虑用 Visual Basic 的结构化异常处理概述替换这种错误控制。
备注
可以使用 DatePart 函数来计算日期/时间值并返回一个特定组件。例如,可以使用 DatePart 计算某个日期是星期几或目前为几点钟。
如果为 Interval 参数选择 DateInterval.Weekday,则返回值将与 FirstDayOfWeek 枚举的值一致。如果选择 DateInterval.WeekOfYear,DatePart 将使用 System.Globalization 命名空间的 Calendar 和 CultureInfo 类来确定当前的设置。
FirstDayOfWeekValue 参数影响使用 DateInterval.Weekday 和 DateInterval.WeekOfYear Interval 设置的计算。FirstWeekOfYearValue 参数影响将 DateInterval.WeekOfYear 指定为 Interval 的计算。
因为每个 Date 值都由 DateTime 结构支持,其方法在检索日期/时间部分中提供了额外的选项。例如,将时间值设置为午夜,可以获取 Date 变量的完整日期值,如下所示:
Dim CurrDatTim As Date = Now ' Current date and time.
Dim LastMidnight As Date = CurrDatTim.Date ' At midnight.
示例
本示例取得一个日期,并使用 DatePart 函数显示该日期所在的季度。
Dim FirstDate, Msg As String 'Declare variables.
Dim SecondDate As Date
FirstDate = InputBox("Enter a date:")
SecondDate = CDate(FirstDate)
Msg = "Quarter: " & DatePart(DateInterval.Quarter, SecondDate)
MsgBox(Msg)
要求
**模块:**DateAndTime
**程序集:**Visual Basic 运行库(在 Microsoft.VisualBasic.dll 中)