VBA Excel - 组合多个自动过滤器

时间:2017-08-10 09:52:27

标签: excel vba excel-vba

我有多个过滤器(范围(" A5:I5")),并希望连续组合这些过滤器:

Range("A5:I5").Select
Selection.AutoFilter

Range("A6:A500").AutoFilter Field:=1, Criteria1:="<>0"
Range("B6:B500").AutoFilter Field:=2, Criteria1:="<>"
Range("F6:F500").AutoFilter Field:=6, Criteria1:="yes", Operator:=xlOr, Criteria2:="="
Range("G6:G500").AutoFilter Field:=7, Criteria1:="yes", Operator:=xlOr, Criteria2:="="

然而他们似乎互相取消,我的目标是&#34;是&#34;过滤仅过滤之前已过滤的数据。
我怎样才能&#34;堆叠&#34;过滤器?

1 个答案:

答案 0 :(得分:3)

将其设为Range之一:

Range("A5:I5").Autofilter
With Range("A6:I500")
  .AutoFilter Field:=1, Criteria1:="<>0"
  .AutoFilter Field:=2, Criteria1:="<>"
  .AutoFilter Field:=6, Criteria1:="yes", Operator:=xlOr, Criteria2:="="
  .AutoFilter Field:=7, Criteria1:="yes", Operator:=xlOr, Criteria2:="="
End With

还要尽量避免使用.Select,这对于任何操作都不是必需的。

相关问题