我有autofilter的代码,它总是选择" TOP"和" TOP 100"在R栏中:
Sub Filter()
With Worksheets("Overview")
Range("A1:S1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$S$9999").AutoFilter Field:=18, Criteria1:="=TOP", _
Operator:=xlOr, Criteria2:="=TOP 100"
End With
End Sub
但是我需要添加另一个过滤器,它总是会在P列中隐藏零。我的意思是,我知道,我必须将值放入" Criteria",我想过滤。但这些值将是变量,但总是会有0,我需要隐藏它。有谁知道,请问怎么做?
非常感谢!
答案 0 :(得分:2)
请尝试Criteria1:="<>0"
过滤除0以外的所有内容
答案 1 :(得分:1)
此代码还将从P列中过滤掉0:
Sub Filter()
With Worksheets("Overview").Range("$A$1:$S$9999")
.AutoFilter Field:=18, Criteria1:="=TOP", Operator:=xlOr, Criteria2:="=TOP 100"
.AutoFilter Field:=16, Criteria1:="<>0"
End With
End Sub
答案 2 :(得分:0)
尝试:
Sub Filtre()
Dim r As Range
Set r = Worksheets("Overview").Range("A:S")
r.AutoFilter Field:=18, Criteria1:="=TOP", Operator:=xlOr, Criteria2:="=TOP 100"
r.AutoFilter Field:=16, Criteria1:="<>0", Operator:=xlAnd
End Sub