我正在尝试创建一个更改几个数据透视表(不是全部)的过滤器的宏,但我在PivotFields上出现错误,这是我的代码示例:
Sheets("Sheet1").PivotTables("PivotTable" & pivot_counter).PivotFields( _
"[year].[year].[year]").VisibleItemList = Array("")
我的问题是:
1-为什么我们在使用VisibleItemList时使用PivotFields(“[year]。[year]。[year]”)?为什么我们必须重复它,它的含义是什么,在任何地方都无法解决它。
2-这段代码有什么问题?我的数据透视表有一个名为“year”的字段,过滤器设置为特定年份(比如说2013年),我希望它在所有可能的年份都有所改变。
答案 0 :(得分:0)
Sub Tester()
ShowAll ActiveSheet.PivotTables("PivotTable1").PivotFields("Year")
End Sub
Sub ShowAll(pf As PivotField)
Dim pi As PivotItem
Application.ScreenUpdating = False
For Each pi In pf.PivotItems
pi.Visible = True
Next pi
Application.ScreenUpdating = True
End Sub