有一个常量为Datevariablestypes的默认值,一个la vbNullString为stringtypes?

我有一列date。 这些将被合并到对象中,每行一个,以及该行中的其他数据。

但是,date列中的某些单元格是空的。 当我testing我创build一个datevariables,并将其值设置为空单元格的值。 我msgbox'ddate的新值,发现它是“上午12:00”。 是否有一个常量内置于VBA来表示这个值,所以我可以做类似的testing:

If myDate = vbNullDate Then 

我偶尔遇到这个问题。 我通常做到以下几点:

 dim d as date if d = cdate(0) then msgbox "Default value" 

本地Datevariables的默认值似乎是:

Saturday, December 30, 1899 12:00:00 AM

基于这个过程:

 Sub testdate() Dim d As Date Debug.Print Format$(d, "Long Date") & " " & Format$(d, "Long Time") End Sub 

要检查任何variablestypes的默认值,只需声明该types的variables,然后打印它的值。

 Sub testint() Dim d As Integer Debug.Print d End Sub 

正如安迪·霍拉代(Andy holaday)在下面的问题的评论中所说的那样,一个date的默认值就是简单的0.愚蠢的我: