我在工作表PivotTables_Sheet
中有两个数据透视表(PivotTable1和PivotTable2),并且在工作表YearInput
中有一个显示年份的单元格。我尝试将YearInput中的单元格年(J4)链接为过滤器,以链接到PivotTables工作表中的所有数据透视表。
但是我的代码无法按预期工作。有人知道如何更正此代码吗? 这是代码:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Target.Address = Range("J4").Address Then Exit Sub
Dim pt As PivotTable
Dim ptItem As PivotItem
On Error Resume Next
For Each pt In Worksheets("PivotTables_Sheet").PivotTables
With pt.PivotFields("Year for Sales")
If .EnableMultiplePageItems = True Then
.ClearAllFilters
End If
Set ptItem = .PivotItems(Target.Value)
If Not ptItem Is Nothing Then
.CurrentPage = Target.Value
End If
End With
Next
End Sub
注意:我使用Excel 2010,并使用PowerPivot构建数据透视表。
答案 0 :(得分:0)
在没有VBA的情况下执行此操作的一种方法是使用所有枢轴之间共有的切片器。然后一年改为一年,它还将更新其他数据透视表。
这是通过首先单击枢轴,然后将在功能区上显示“分析”选项。在其下有一个插入切片器,您将需要一年。
然后,您将转到其他枢纽,而是进行过滤器连接,然后选择年份分切器。
请注意,如果您不希望最终用户看到年份切片器,则可以将其移到隐藏的工作表上,它仍然可以在所有引用它的枢轴上传播年份。 >