我试图在数据透视表中删除大于或等于9000的值。我正在使用VBA代码,我可以从UOM过滤器中删除值,但我还需要从OpAc过滤器中删除9000或更高的值。
ActiveSheet.PivotTables("Pivot ZP2P").PivotFields("UOM").CurrentPage = "(All)"
With ActiveSheet.PivotTables("Pivot ZP2P").PivotFields("UOM")
.PivotItems("""").Visible = False
.PivotItems("""2").Visible = False
.PivotItems("EA").Visible = False
.PivotItems("FOZ").Visible = False
.PivotItems("ML").Visible = False
.PivotItems("TU").Visible = False
End With
ActiveSheet.PivotTables("Pivot ZP2P").PivotFields("UOM"). _
EnableMultiplePageItems = True
With ActiveSheet.PivotTables("Pivot ZP2P").PivotFields("OpAc")
.Orientation = xlPageField
.Position = 1
.PivotItems("9" & "*").Visible = False
End With
如您所见,我尝试使用通配符9 *删除项目,并将9和*连接为字符串。 我不确定我是否正确地删除了值> = 9000
答案 0 :(得分:0)
这个问题已经解决了。要删除9000中的项目,请使用以下代码:
With ActiveSheet.PivotTables("Pivot ZP2P").PivotFields("OpAc")
.Orientation = xlPageField
.Position = 1
End With
ActiveSheet.PivotTables("Pivot ZP2P").PivotFields("OpAc").CurrentPage = "(All)"
With ActiveSheet.PivotTables("Pivot ZP2P").PivotFields("OpAc")
For o = 1 To .PivotItems.Count
With .PivotItems(o)
If .Name Like ("9*") Then
.Visible = False
Else
.Visible = True
End If
End With
Next o
End With
ActiveSheet.PivotTables("Pivot ZP2P").PivotFields("OpAc"). _
EnableMultiplePageItems = True