DateDiff VBA的多个Vars

时间:2015-03-04 23:19:02

标签: excel vba datediff

我现在有一个VBA脚本,它将6个值读作整数。日期,月份和年份的3个值以及来自不同位置的相同类型的3个值。我想取值并检查它们之间是否有超过一年的时间。 DateDiff似乎是处理此问题的最简单方法,但是该函数将值读入为一个DateValue(即2015年3月20日),并且我的值将单独返回(08,08,2015)。 我编写了一个函数,将每个值存储到var中,然后单独使用它们将它们连接成DateValue可以使用的格式。 这是有效的,但我很好奇是否有另一种(更好的)方法来处理这个问题?

提前致谢。

1 个答案:

答案 0 :(得分:1)

函数DateSerial(2015,3,4)将返回2015年3月4日的日期,并且使用该格式的两个日期,您可以从另一个中减去一个日期,如果(的绝对值)差异是> 365然后你知道他们相隔一年多了。

Dim A As Date
A = DateSerial(2015, 3, 4)
Dim B As Date
B = DateSerial(2014, 3, 2)
Dim C As Integer
C = Abs(A - B)
MsgBox C & " days between"