VBA相当于DATEVALUE?

时间:2016-07-06 14:57:14

标签: excel excel-vba vba

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

示例: 1/19/2016,格式化" m / d / yyyy",将返回42388=DATEVALUE()

2 个答案:

答案 0 :(得分:3)

使用CLng例如

=DATEVALUE("7/7/16")

返回

42558

在VBA中:

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

答案 1 :(得分:1)

有几种方法可以做到这一点。 @Robin有一个很好的。我还要再添加一个

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

DateDiff函数以第一个参数为单位计算两个日期(第二个和第三个参数)之间的差异。因此,如果您将"d"更改为"h",您将获得介于0(Excel / VBA中的第一个可能日期)和7/7/2016

之间的小时数