【发布时间】:2018-05-23 15:52:30
【问题描述】:
我想用 VBA 代码过滤日期列,但我得到了错误的结果。
我的数据(仅作为示例,我有很多行):
complete_date
(blank)
(blank)
(blank)
(blank)
(blank)
(blank)
5/12/18 9:08 AM
5/12/18 9:41 AM
5/20/18 1:51 PM
(blank)
(blank)
(blank)
(blank)
5/20/18 1:50 PM
5/20/18 1:52 PM
5/21/18 6:35 AM
5/20/18 1:49 PM
5/20/18 1:54 PM
5/21/18 7:53 AM
5/20/18 1:49 PM
5/20/18 1:56 PM
5/21/18 11:20 AM
5/20/18 1:49 PM
我的代码:
Public Sub MyFilter()
Dim lngStart As Long, lngEnd As Long
lngStart = Range("b1").Value 'assume this is the start date
lngEnd = Range("b2").Value 'assume this is the end date
Range("q:q").AutoFilter field:=1, _
Criteria1:=">=" & lngStart, _
Operator:=xlAnd, _
Criteria2:="<=" & lngEnd
End Sub
对于这个例子,如果我根据以下日期过滤我没有得到所有可能的结果(我没有看到 5/20 天的任何结果)。 我的搜索:
5/20/18 13:51 ---> 开始时间 5/22/18 13:51 ---> 结束时间
知道为什么吗?谢谢,
【问题讨论】:
-
自动过滤器中的日期必须采用美国格式。