下面的代码适用于工作表上的数据透视表数据范围,当激活“SelectionChange”(每次点击)时,它会更新每个工作表上的所有“数据透视表3”。它通常有效,除非我编辑它并重试
问题:如何使用“Worksheet_Change”?我总是遇到运行时错误,无法弄清楚语法
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For Each ws In ActiveWorkbook.Worksheets
Call PivRefresh
Next
End Sub
Sub PivRefresh()
ActiveSheet.PivotTables("PivotTable3").PivotCache.refresh
End Sub
答案 0 :(得分:2)
您每次都引用相同的表格 - 您需要以下内容:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For Each ws In ActiveWorkbook.Worksheets
ws.PivotTables("PivotTable3").PivotCache.Refresh
Next
End Sub
不需要PivRefresh()
sub