VBA相当于DATEVALUE?

公式函数= DATEVALUE和VBA的DateValue()提供排他的结果。 如何在VBA中格式化date以获得与我使用= DATEVALUE相同的序列化?

例如: 1/19/2016 ,格式为“m / d / yyyy”,将返回42388=DATEVALUE()

使用CLng例如

 =DATEVALUE("7/7/16") 

返回

 42558 

在VBA中:

 ? CLng(DateValue("7/7/16")) 42558 

几种方法来做到这一点。 @Robin有一个很好的。 我会再添加一个

 ?DateDiff("d",0, "7/7/16") 42558 

DateDiff函数以第一个参数为单位计算两个date(第二个和第三个参数)之间的差异。 所以,如果您将"d"更改为"h"您将得到0(Excel / VBA中的第一个可能date)和7/7/2016之间的小时数