单元格值更改时更新数据透视表筛选器

时间:2019-10-18 17:14:57

标签: excel vba pivot pivot-table

我正在尝试根据范围“ A1”中的值过滤数据透视表。
我一次过滤一个值,因此在“数据透视表”中禁用了多项选择。

我能够找到类似的东西:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim pt As PivotTable
Dim Field As PivotField
Dim A1Value As String

If Not Intersect(Target, Range("A1")) Is Nothing Then

Set pt = Worksheets("Sheet2").PivotTables("PivotTable2")
Set Field = pt.PivotFields("Test")
A1Value = Worksheets("Sheet1").Range("A1").Value

pt.ManualUpdate = True 

With pt
Field.ClearAllFilters
Field.CurrentPage = A1Value
End With

pt.ManualUpdate = False

End If
End Sub

我只想应用过滤器,而不是每次都完全刷新表。
因此,我添加了.ManualUpdate以阻止数据透视表在每次状态更改时刷新。
但是代码似乎不起作用。也许有更好的方法可以做到这一点?

0 个答案:

没有答案