我正在尝试使用多个条件筛选数据透视表.我检查了其他帖子,但运行时收到错误"Range类的AutoFiler方法失败":
Range("g41").Select
Selection.AutoFilter field:=1, Criteria1:=Array( _
"101", "103"), Operator:=xlFilterValues
Run Code Online (Sandbox Code Playgroud)
以下工作,但有相当多的项目来过滤true/false
With ActiveSheet.PivotTables("PivotTable3").PivotFields("Value")
.PivotItems("101").Visible = True
.PivotItems("103").Visible = True
.PivotItems("105").Visible = False
End With
Run Code Online (Sandbox Code Playgroud)
有更有效的方法吗?
在我的数据分析(第一个问题)的持续传奇中,我想删除部门(字段 7)不是 101、102 或 103 的所有行(名称已更改以保护无辜者)。数据中有大约一百个部门,因此使用Criteria1:=Array("104", "105", "106",etc 是不切实际的。
我想做这样的事情:
myrange.AutoFilter Field:=7, Criteria1:="<>101", Operator:=xlOr, _
Criteria2:="<>102", Operator:=xlOr, Criteria3:="<>103"
Run Code Online (Sandbox Code Playgroud)
但 Excel 不能识别超过 2 个条件。我可以添加一个辅助列,并让宏运行每一行(如果是 101、102 或 103,则值=是),过滤掉“是”,然后删除剩余的所有内容,但我将其保存为最后一个采取。
有没有办法让 Autofilter Criteria1 不等于数组?就像是:
myrange.AutoFilter Field:=7, Criteria1:="<>" & Array("101", "102", "103")
Run Code Online (Sandbox Code Playgroud) 我有多行包含不同的字符串,我想在其中过滤按此顺序的数据
“DI 然后数字”即DI07493A。
列值如下:
01利辛
05利辛
阿尔胡斯克
DI07493A
ABS16
外国直接投资
DI94193A
我正在这样尝试。
sheet1.Range("A1:A" & LastRow).AutoFilter Field:=4, Criteria1:= DI & #, Operator:=xlFilterValues
Run Code Online (Sandbox Code Playgroud)
它不工作。有办法得到这个结果吗?