使用VBA取消选择单个自动筛选器项实际上是取消选择所有项

时间:2019-06-01 16:00:25

标签: excel vba autofilter

与VBA相当好,但是此代码失败。尝试在“自动过滤器”字段中取消选择单个项目。相反,它将取消选择该字段中的所有项目。有人可以告诉我我在做什么错吗?在下面的代码段中,我需要以下内容:

  • 在字段24中显示所有#N / A值
  • 在字段22中显示“收入”以外的所有字段值
  • 在字段8中显示所有字段值,除了空白

但是,字段24和8取消了所有值的选择,而不是过滤。我尝试添加强制计算,但这也没有做任何事情。有什么建议吗?

Sub Macro1()

    With Sheets("Expense Data")
        .Activate
        On Error Resume Next
        .ShowAllData
        Range("A1").AutoFilter Field:=24, Criteria1:="#N/A"
        Range("A1").AutoFilter Field:=22, Criteria1:="<>Revenue"
        Range("A1").AutoFilter Field:=8, Criteria1:="<>(blanks)"
        .Calculate
    End With

End Sub

1 个答案:

答案 0 :(得分:0)

没关系,我明白了...

它被视为TEXT过滤器-因此“ <>(空白)”应仅为“ <>”。

全部固定。