在自动筛选条件中使用多个单元格值

use multiple cell values in autofilter criteria

请帮我解决这个问题:

1) 单元格 P1、P2、P3、P4 中的值是用户定义的词,例如 "F"、"S" 和 NA...

2) 使用用户定义的值作为过滤范围(Y2:Y2999)

中数据的条件

我试过但没有用的是:

Sub c1()
Dim a As String
Dim b As String
Dim c As String
Dim d As String
a = Cells(1, 16).Value
b = Cells(2, 16).Value
c = Cells(3, 16).Value
d = Cells(4, 16).Value
ActiveSheet.Range("$Y:$Y99").AutoFilter Field:=1,_
Criteria1:=Array(a, b, c, d)
End Sub

我认为您应该添加 Criteria2Criteria3Criteria4

我会更新这一行

ActiveSheet.Range("$Y:$Y99").AutoFilter Field:=1,_
Criteria1:=Array(a, b, c, d)

成为

ActiveSheet.Range("$Y:$Y99").AutoFilter Field:=1, _
Criteria1:="=" & a, _
    Operator:=xlOr, _
Criteria2:="=" & b, _
    Operator:=xlOr, _
Criteria3:="=" & c, _
    Operator:=xlOr, _
Criteria4:="=" & d

或者如果您打算这样做:

ActiveSheet.Range("$Y:$Y99").AutoFilter Field:=1,_
Criteria1:=Array(a, b, c, d)

您应该尝试添加 xlFilterValues 运算符,使其看起来像这样:

ActiveSheet.Range("$Y:$Y99").AutoFilter Field:=1, _
Criteria1:=Array(a, b, c, d), _
Operator:=xlFilterValues