1

我们如何比较 vba 中的两个日期字符串,例如“01.02.2013 < 02/02/2013”​​?无论日期如何,这始终是真实的。在我提到的示例中,两种日期格式是正确的。

下面的 vba 代码会引发错误。

Sub aa()
Dim a As Variant, b As Variant, c As Variant
a = Format("1.2.2012", "DD\/MM\/YYYY")
b = Format("2.2.2012", "DD\/MM\/YYYY")
MsgBox (a)
End Sub
4

2 回答 2

1

CDate()将您的日期(字符串)转换为可接受的格式。02/02/2013 有效,我认为 02.02.2013 无效。Replace()需要时使用。

然后你可以将你的 String 数据转换为 Date 数据类型CDate(myString)。日期可以通过通常的运算符来相互比较,例如 > < =。

于 2013-06-03T14:58:12.903 回答
1

将字符串清理为正确的格式(查看 CDATE 接受的内容,然后使用 CDate(a) >= CDate(b) 进行比较。

于 2013-06-03T15:06:03.667 回答