Vba 在Excel中使用宏筛选数据
我有一行代码使用excel中的宏过滤数据。我希望它在一列中过滤掉两个不同的标准。请参阅下面的代码。从谷歌的角度来看,它应该是可行的,但事实并非如此Vba 在Excel中使用宏筛选数据,vba,excel,macros,Vba,Excel,Macros,我有一行代码使用excel中的宏过滤数据。我希望它在一列中过滤掉两个不同的标准。请参阅下面的代码。从谷歌的角度来看,它应该是可行的,但事实并非如此 Sub Unmet_Projects() With Sheet1 .AutoFilterMode = False .Range("A1:CA1").AutoFilter .Range("A1:CA1").AutoFilter Field:=3, Criteria1:="Fulfilled", Operator:=xlAnd,
Sub Unmet_Projects()
With Sheet1
.AutoFilterMode = False
.Range("A1:CA1").AutoFilter
.Range("A1:CA1").AutoFilter Field:=3, Criteria1:="Fulfilled", Operator:=xlAnd, Criteria2:="Requested", VisibleDropDown:=False
End With
End Sub
我认为应该是
Operator:=xlOr
而不是Operator:=xlAnd
,因为第3列(第C列
)中的值只能满足
或要求
如果您希望在筛选器中包含更多值,我建议改为使用以下选项:
.Range("A1:CA1").AutoFilter Field:=3, Criteria1:=Array("Fulfilled", "Requested", "Partially Assigned", "Not yet assigned", "Assigned", "etc..."), Operator:=xlFilterValues
太好了,谢谢你。是否可以添加更多标准。我实际上还有4个值需要过滤。我已经尝试过了,但是它用Sheet1.AutoFilterMode=False覆盖了第一个值.Sub unmeted_Projects1()。范围(“A1:CA1”).AutoFilter.Range(“A1:CA1”).AutoFilter字段:=3,标准1:=“已完成”,运算符:=xlOr,标准2:=“已请求”,可见下拉列表:=True.Range(“A1:CA1”)。AutoFilter字段:=3,标准1:=“部分分配”,运算符:=xlOr,标准2:=“软预订”,VisibleDropDown:=True End With End sub如果此解决方案解决了您的问题,请将此帖子标记为已解决。如果您有新问题,请发布新问题。