返回指定年、月和日的 Variant (Date) 类型的值。
语法
DateSerial ( 年、月、日 )
警告 确保参数在正确的值范围内。 无效的参数可能会导致不正确的结果。
DateSerial 函数语法具有以下参数:
参数 |
说明 |
年 |
必需。 整数。 介于 100 和 9999 之间的数字(含)或 数值表达式 。 |
备 |
必需。 整数。 任何数值表达式。 |
天 |
必需。 整数。 任何数值表达式。 |
备注
若要指定日期(如 1991 年 12 月 31 日),每个 DateSerial参数 的数字范围应位于单位的接受范围内:即,1–31 天,1–12 个月。 但是,还可以使用表示某个日期之前或之后的天数、月数或年数的任何数值表达式为每个参数指定相对日期。
以下示例使用数值表达式而不是绝对日期数字。 在这里 ,DateSerial 函数返回一个日期,即 (1 - 1) 第一天的前一天,即 (8 - 2) 年 8 月前两个月,10 年前的 1990 年 (1990 - 10) ;换句话说,1980年5月31日。
DateSerial(1990 - 10, 8 - 2, 1 - 1)
根据用户定义的计算机设置解释 year 参数的两位数年份。 默认设置是,介于 0 和 29(含)之间的值被解释为 2000-2029 年。 30 到 99 之间的默认值被解释为 1930-1999 年。 对于所有其他 年份 参数,请使用四位数的年份 (例如 1800) 。
早于 Windows 2000 的 Windows 版本根据上述默认值解释两位数年份。 若要确保函数返回正确的值,请使用四位数年份。
当任何参数超过该参数的接受范围时,它会根据需要递增到下一个更大的单位。 例如,如果指定 35 天,则计算结果为一个月和一些天数,具体取决于应用该日期的年份。 如果任何单个参数在 -32,768 到 32,767 的范围内,则会发生错误。 如果三个参数指定的日期超出了可接受的日期范围,则会发生错误。
注意: 对于年、月和日,如果 Calendar 属性设置为 Gregorian,则假定提供的值为 Gregorian。 如果 Calendar 属性设置为 Hijri,则假定提供的值为 Hijri。
返回的日期部分位于当前 Visual Basic 日历的时间段单位中。 例如,如果当前日历为 Hijri,而要返回的日期部分是年份,则年份值为 Hijri 年份。 对于参数 年,介于 0 和 99(含)之间的值被解释为 1400-1499 年。 对于所有其他 年份 值,请使用完整的四位数年份 (例如 1520) 。
查询示例
Expression |
结果 |
SELECT Dateserial (2018,12,13) AS NewDate FROM ProductSales; |
返回在函数参数中输入的指定年份、月份和日期的“date”,并显示在“NewDate”列中。 结果:“13/12/2018”。 |
VBA 示例
注意: 下面的示例演示了如何在 Visual Basic for Applications (VBA) 模块中使用此函数。 有关使用 VBA 的详细信息,请在搜索旁边的下拉列表中选择“开发人员参考”,并在搜索框中输入一个或多个术语。
此示例使用 DateSerial 函数返回指定年、月和日的日期。
Dim MyDate ' MyDate contains the date for February 12, 1969. MyDate = DateSerial(1969, 2, 12) ' Return a date.