根据动态更改的单元格值过滤数据透视表过滤器?

时间:2017-04-19 18:48:52

标签: excel vba excel-vba excel-2010

我有一个数据透视表,我希望根据单元格的值进行过滤。这个单元格动态变化,所以我需要数据透视表来动态过滤。

到目前为止我的代码是:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("S1")) Is Nothing Then Exit Sub

Dim pt As PivotTable
Dim Field As PivotField
Dim NewCat As String

Set pt = Sheet1.PivotTables("PivotTable6")
Set Field = pt.PivotFields("Region Name")
NewCat = Sheet1.Range("S1").Value

With pt
Field.ClearAllFilters
Field.CurrentPage = NewCat
pt.RefreshTable
End With

End Sub

此代码的问题是数据透视表不会自动过滤。

要对数据透视表进行过滤,我需要手动选择单元格S1。这是一个问题,因为单元格值会发生变化,因此我需要不断点击此单元格。

如何修改代码以便自动选择单元格S1的值,而不需要我手动单击单元格?

0 个答案:

没有答案