【发布时间】:2014-06-01 16:42:18
【问题描述】:
我在 Excel VBA 中有一个列,其中包含许多“dd.mm.yyyy hh:mm”格式的日期 我只想在日期之间过滤此列(而不是按小时)。由于它不能正确使用 >= 和
= 开始日期和
用户在文本框中输入开始日期和结束日期,格式为 mm/dd/yyyy
我尝试过滤的方式是:
EndDate_1 = DateAdd("d", 1, EndDate)
EndDate_1 = Format(EndDate_1, "mm/dd/yyyy")
Selection.AutoFilter Field:=1, Criteria1:=">=" & StartDate, Operator:=xlAnd, Criteria2:="<" & EndDate_1
但这不起作用(所有数据都被过滤掉了,没有错误消息)
如果我只是输入
Selection.AutoFilter Field:=1, Criteria1:=">=" & StartDate, Operator:=xlAnd, Criteria2:="<=" & EndDate
在 StartDate 和 EndDate 上没有任何格式,过滤工作(不正确,但至少它工作 :))
我尝试了很多想法,但我无法让它运行! 感谢您的帮助!
【问题讨论】:
-
应该是:
Criteria1:=">=" & StartDate, Operator:=xlAnd, Criteria2:="<=" & EndDate+1?
标签: vba excel excel-2013