VBA Date

示例

Dim Value As Date

日期类型在内部以带符号的64位浮点数据类型表示,小数点左侧的值表示从1899年12月30日开始的天数(尽管请参阅下面的注释)。小数点右边的值将时间表示为小数天。因此,整数Date将具有12:00:00 AM的时间分量,而x.5将具有12:00:00 PM的时间分量。

Date的有效值在1月1100和12月319999之间。由于Double的范围较大,因此可以通过分配超出该范围的值来溢出Date。

因此,它可以与Double for Date计算互换使用:

Dim MyDate As Double
MyDate = 0                                  'Epoch date.
Debug.Print Format$(MyDate, "yyyy-mm-dd")   'Prints 1899-12-30.
MyDate = MyDate + 365
Debug.Print Format$(MyDate, "yyyy-mm-dd")   'Prints 1900-12-30.

转换为Date的转换函数为CDate(),它接受任何数字类型的字符串日期/时间表示形式。重要的是要注意,日期的字符串表示形式将根据当前使用的语言环境设置进行转换,因此,如果该代码是可移植的,则应避免直接强制转换。