我有一张带有切片器的工作表,这些切片器引用了另一张工作表上的一个数据透视表。在我的带有切片器的工作表上,它们更新了引用该数据透视表的表格。
问题是,当我更改数据透视表以获取新信息时,它会过滤掉范围内的所有空白行。每次我在数据透视表中切换某些内容时,我都需要重新应用它,以确保我始终显示最新数据。
这是我尝试过的多种格式但似乎没有什么效果:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 5 Then
ActiveSheet.AutoFilter.ApplyFilter
End If
End Sub
答案1
以下示例代码将帮助您在切片器更新时过滤数据透视表。
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
Dim Sheet as WorkSheet, Pivot as PivotTable
If ActiveWorkbook.SlicerCaches("Region").SlicerItems("East").Selected = True Then
For Each Sheet in ThisWorkbook.WorkSheets
For Each Pivot in Sheet.PivotTables
Pivot.RefreshTable
Pivot.Update
Next
Next
End Sub
注意:我已经假设了切片器缓存和项目名称,您需要根据您的值对两者进行修改。
我确实希望这对你有帮助。