将数据透视表filter链接到单元格

我知道类似的问题已经被多次提出,但是我find的和适合我的需求的解决scheme似乎并不奏效,所以我非常感谢任何帮助。

我的问题是,我有一个数据透视表2,我想链接到单元格值(C1)的filter。 单元格值本身是从与其他数据源的另一个数据透视表连接的分割器中提取的。 当单元格C1中的值发生更改时,我希望数据透视表2的filter自动更改。

这里是我logging的macros,所以它可能会更容易开始:

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 

非常感谢!

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

 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