我正尝试使用vba在excel中的日期范围之间进行筛选。它不起作用。
但是,当我执行手动过滤器时,它可以工作。所以我记录了宏并应用了相同的代码。再说一次,这是行不通的。
文件中的日期格式如下:
比方说,我正试图从2021年7月1日至31日过滤掉。
下面是不起作用的代码:日期在A列中。
startDT = ActiveSheet.txtStartDT.Text '01-Jul-2021 endDT = ActiveSheet.txtEndDT.Text '31-Jul-2021 For Each srcWsht In srcWbk.Worksheets lastSrcRow = srcWsht.Range("A1").End(xlDown).Row srcWsht.Range("A2:A" & lastSrcRow).Replace What:="'", Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False srcWsht.Range("A2:A" & lastSrcRow).NumberFormat = "dd-MM-yyyy" srcWsht.Range("A1:O" & lastSrcRow).AutoFilter Field:=1, Criteria1:=">=" & CDate(startDT), Operator:=xlAnd, Criteria2:="<=" & CDate(endDT), visibledropdown:=True