日期比较无法在Access VBA中使用

时间:2013-08-14 06:01:11

标签: vba date ms-access-2007 access-vba

我想比较两个日期。

但是temp总是返回true。

你能解释一下我的错误吗

temp = (Format(CDate("27-Aug-09"), "dd-mmm-yy") > Format(CDate("07-Jul-12"), "dd-mmm-yy"))

1 个答案:

答案 0 :(得分:0)

您根据dd-mmm-yy 格式化值 - 这实际上是他们开始使用的格式。所以你只是比较字符串“27-Aug-09”和“07-Jul-12”...此时“2”晚于“0”,所以比较结束真的很快。

我怀疑你可以摆脱Format来电,比较日期:

temp = (CDate("27-Aug-09") > CDate("07-Jul-12"))

当然,假设CDate可以处理输入。 (我希望那部分没问题。)

如果确实想要比较字符串,则需要将日期转换为自然可排序的格式,例如yyyy-mm-dd