将数据透视表过滤器链接到单元格

时间:2016-11-01 04:49:05

标签: excel vba pivot-table

我知道类似的问题已被多次询问,但我找到并调整以满足我的需求的解决方案似乎不起作用,所以我真的很感激任何帮助。

我的问题是我有一个PivotTable2,我想要链接到单元格值(C1)的过滤器。 单元格值本身是从连接到不同数据源的另一个数据透视表的切片器中提取的。 我希望当单元格C1中的值发生变化时,自动更改数据透视表2的过滤器。

这是我录制的宏,因此可能更容易开始:

    Sub Change_Pivot_Table_Filter()

    Range("C59").Select
    ActiveSheet.PivotTables("PivotTable2").PivotFields("delivery_date"). _
    CurrentPage = "(All)"
    With ActiveSheet.PivotTables("PivotTable2").PivotFields("delivery_date")
    .PivotItems("10/21/2016").Visible = False
    .PivotItems("10/23/2016").Visible = True
    End With
    End Sub

非常感谢!

1 个答案:

答案 0 :(得分:1)

您可以使用工作表更改事件并获得所需的结果。 像这样的东西

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row = 1 And Target.Column = 3 Then
If Target.Value <> "" Then
ActiveSheet.PivotTables("PivotTable2").PivotFields("delivery_date").CurrentPage = Target.Value
End If
End If
End Sub