Date 日期比较在Access VBA中不起作用
我想比较两个日期 但是temp总是返回true 你能解释一下我哪里出了问题吗Date 日期比较在Access VBA中不起作用,date,ms-access,vba,ms-access-2007,Date,Ms Access,Vba,Ms Access 2007,我想比较两个日期 但是temp总是返回true 你能解释一下我哪里出了问题吗 temp = (Format(CDate("27-Aug-09"), "dd-mmm-yy") > Format(CDate("07-Jul-12"), "dd-mmm-yy")) 您正在根据dd mmm yy格式化这些值,这实际上是它们的初始格式。所以你只是比较字符串“2009年8月27日”和“2012年7月7日”。。。此时“2”晚于“0”,因此比较很快完成 我想你可以不用调用格式来比较日期: temp =
temp = (Format(CDate("27-Aug-09"), "dd-mmm-yy") > Format(CDate("07-Jul-12"), "dd-mmm-yy"))
您正在根据dd mmm yy
格式化这些值,这实际上是它们的初始格式。所以你只是比较字符串“2009年8月27日”和“2012年7月7日”。。。此时“2”晚于“0”,因此比较很快完成
我想你可以不用调用格式
来比较日期:
temp = (CDate("27-Aug-09") > CDate("07-Jul-12"))
当然,这是假设CDate
可以处理输入。(我想那部分没问题。)
如果确实要比较字符串,则需要将日期转换为自然可排序的格式,例如,yyyy-mm-dd
format()返回字符串。您需要将其转换回最新版本以进行比较。为什么需要应用格式?