VBA过滤多个单元格

我试图根据另一个选项卡上的多个单元格的值过滤列表,但我不能让它正常工作。

这就是我得到的:

ActiveSheet.Range("$A$2:$Y$129").AutoFilter Field:=13, Criteria1:=Range("Formulas!A8:A10").Value 

问题是,它与1单元格,但不是多倍,因为我已经试图做范围A8:A10。 现在的代码只在最后定义的单元格上过滤,即A10 – 而不是整个范围。

我究竟做错了什么?

使用一个数组variables,我已经使用FiltArr ,并存储您想要过滤的范围内的所有值。

 Dim FiltArr As Variant ' add all range values to array, use Transpose to get a 1-D array FiltArr = Application.Transpose(Worksheets("Formulas").Range("A8:A10").Value) ActiveSheet.Range("A2:Y129").AutoFilter Field:=13, Criteria1:=FiltArr, Operator:=xlFilterValues