Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Date 日期比较在Access VBA中不起作用_Date_Ms Access_Vba_Ms Access 2007 - Fatal编程技术网

Date 日期比较在Access VBA中不起作用

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总是返回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 = (CDate("27-Aug-09") > CDate("07-Jul-12"))
当然,这是假设
CDate
可以处理输入。(我想那部分没问题。)

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

format()返回字符串。您需要将其转换回最新版本以进行比较。为什么需要应用格式?