我有带有过滤器的“数据透视表1”,用户可以在其中选择多个选项。
我有“数据透视表2”,在同一张表中,具有相同的过滤器和相同的值。
当用户使用“数据透视表1”并在过滤器中选择一个、多个或所有值时,我想编写一些VBA,然后自动更新“数据透视表2”中的过滤器选择以匹配在过滤器中选择的“数据透视表1"。
我编写了下面的 VBA,它在仅选取一个值时有效,但我不确定如何在选取多个值时编写 VBA?
ActiveSheet.PivotTables("PivotTable2").PivotFields("Area").ClearAllFilters
ActiveSheet.PivotTables("PivotTable2").PivotFields("Area").CurrentPage = Range("Area_Picked").Value
Range("Area_Picked").Value 是我在工作表中创建的命名范围,它是“PivotTable1”的筛选器所在的单元格
Visible
过滤页面字段Sub FilterPg()
Dim pit As PivotItem
Dim fl As PickerField
Set fl = ActiveSheet.PivotTables("PivotTable2").PivotFields("Area")
fl.ClearAllFilters
For Each pit In fl.PivotItems
pit.Visible = Not IsError(Application.Match(pit.Name, Range("Area_Picked"), 0))
Next
End Sub