我有一个带有2个过滤器的数据透视表“IncTrend” . 这两个过滤器我都重命名为“Service1”和“Service2”(当这些表是从powerpivot创建时,它们最初都被称为服务)
在工作表的A2中,我有一个服务验证列表的名称,其中包含过滤器中项目的名称(它们完全匹配) .
我正在尝试编写一个将从A2中的“选择”中读取的VBA代码,并更改数据透视表过滤器“Service1”和“Service2”以匹配它 .
前提是我将有许多不同的数据透视表,我需要更改过滤器以匹配不同的数据,但我甚至无法使用VBA进行更改 .
我一直在
无法获取数据透视表类的PivotFields属性
任何帮助将不胜感激 . 这是数据透视表的SS .
我的代码是:
Sub Filter_Change()
Dim WS As Worksheet: Set WS = ActiveWorkbook.Worksheets("Main")
Dim PT1 As PivotTable: Set PT1 = WS.PivotTables("IncTrend")
Dim PF1 As PivotField: Set PF1 = PT1.PivotFields("[Inc Open].[Service].[Service]")
Dim Choice As String: Choice = Worksheets("Main").Range("A2").Value
With PF1
.ClearAllFilters
.CurrentPage = Choice
'.PivotFilters.Add Type:=xlCaptionEquals, Value1:=Choice
End With
End Sub
1 回答
替换你的行:
附: