我有一列日期,这是数据库的输出。有一个宏在此日期过滤,用于显示当前日期之前14天以上的所有日期,不包括空值。应用时过滤器会过滤整个工作表并且不显示任何内容。当我取下-14时,我确实得到了日期,我甚至尝试使用alt a,e,f来确保列格式正确,但没有运气。
这是我的代码段:
ActiveSheet.UsedRange.AutoFilter Field:=34, Criteria:="<>NULL", _
Operator:=xlAnd, Criteria2:="<" & Now()-14
我尝试将criteria2
更改为"<" & Date - 14 & "# 00:00:00 AM#"
请帮忙
答案 0 :(得分:1)
试试这个
将Criteria:="<>NULL"
更改为Criteria1:="<>NULL"
<强>后续强>
代码无效,因为标题不在第1行。一旦指定了确切的范围,它就开始工作了。
Option Explicit
Sub Sample()
Dim lRow As Long
lRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
ActiveSheet.AutoFilterMode = False
ActiveSheet.Range("$A$2:$BV$" & lRow).AutoFilter Field:=34, Criteria1:="<>NULL" _
, Operator:=xlAnd, Criteria2:="<" & Format(Date - 14, "0")
End Sub