我有多个过滤器(范围(" 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;过滤器?
答案 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
,这对于任何操作都不是必需的。