VBAdate格式

我需要过滤一个包含date的列。 我需要获取date介于current datecurrent date + 15 days之间的所有行

这是我的VBA代码来做到这一点:

  Dim seuilDate As Date, currentDate As Date seuilDate = DateAdd("d", 15, Date) currentDate = Date MsgBox "Date seuil :" & seuilDate & " Current Date:" & currentDate With Workbooks("macro1.xlsm").Worksheets("Feuil1") If .FilterMode Then .ShowAllData '.range("C:C").AutoFilter Field:=3, Operator:=xlFilterValues .range("C:C").AutoFilter Field:=1, Criteria1:=">=" & currentDate, Criteria2:="<" & seuilDate, Operator:=xlAnd End With 

这是什么显示的MessageBox:

在这里输入图像说明

而这正是我想要的,

但在Excel文件中,我得到:

在这里输入图像说明

date和月份字段在CurrentDate+15variables中反转。

任何想法如何解决这个问题。

将date值转换为双精度时,将其应用于自动filter:

  .range("C:C").AutoFilter Field:=1, Criteria1:=">=" & CDbl(currentDate), Criteria2:="<" & CDbl(seuilDate), Operator:=xlAnd 

因为VBA非常以美国为中心。