1

我有一列日期,它是数据库的输出。有一个在此日期上过滤的宏,旨在显示从当前日期起超过 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#"

请帮忙

4

1 回答 1

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
于 2012-05-21T15:17:04.497 回答