提问人:AesusV 提问时间:11/11/2021 最后编辑:braXAesusV 更新时间:11/11/2021 访问量:53
根据所选变量筛选出多个条件
Filtering out multiple criteria based on chosen variables
问:
我以前在板上看到过这个问题,但一直无法让它起作用。
我正在尝试根据下拉列表从列中过滤数据。
我已经能够让它适用于单个变量,但是对于多个变量,由于某种原因,它似乎直接跳到最后一个变量,我不知道为什么。
Dim A1 As Variant,
A1 = Worksheets("Comparison Sheet").Cells(9, 4).Value
Sheets("Data Sheet").Range("B$31:S279").AutoFilter Field:=4, Criteria1:=("<>" & A1), Operator:=xlFilterValues
以上适用于单个变量
Dim A1 As Variant, A2 As Variant, A3 As Variant, A4 As Variant
A1 = Worksheets("Comparison Sheet").Cells(9, 4).Value
A2 = Worksheets("Comparison Sheet").Cells(10, 4).Value
A3 = Worksheets("Comparison Sheet").Cells(11, 4).Value
A4 = Worksheets("Comparison Sheet").Cells(12, 4).Value
Sheets("Data Sheet").Range("B$31:S279").AutoFilter Field:=4, Criteria1:=Array("<>" & A1, "<>" & A2, "<>" & A3, "<>" & A4), Operator:=xlFilterValues
这将返回运行时错误 (1004) “Range 类的 AutoFilter 方法失败”
我不确定为什么我会在这里收到这个错误,因为我使用了与包容性过滤器基本相同的代码,并且没有错误或问题,例如
Sheets("Data Sheet").Range("B$31:S279").AutoFilter Field:=4, Criteria1:=Array(A1, A2, A3, A4), Operator:=xlFilterValues
最后,当我将运算符设置为 xlAnd 时,
`Sheets("Data Sheet").Range("B$31:S279").AutoFilter Field:=4, Criteria1:=Array("<>" & A1, "<>" & A2, "<>" & A3, "<>" & A4), Operator:=xlAnd`
它总是只显示 A4 中的值,我不确定为什么会这样。
答: 暂无答案
上一个:引用筛选列中的顶部单元格
下一个:带有 IF 语句的单元格地址
评论