Excel - 当数据源更改时如何刷新一张工作表中的多个数据透视表?

问题描述 投票:0回答:1

我在一张表中有多个数据透视表,它们也链接到数据透视图。 当我向主数据源添加列/行时,如何实现 Excel 自动刷新? 我想避免手动更改每个数据透视表的数据源。

已尝试使用以下VBA公式 但是当我刷新时,我的数据透视表仍然没有显示新添加的数据透视图字段。 如何让数据透视图字段显示在所有数据透视图上?

VBA如下,有问题吗?

Private Sub Worksheet_Change(ByVal Target As Range)

'Only Refresh All Pivot Tables
For Each pc In ThisWorkbook.PivotCaches
pc.Refresh
Next pc

End Sub
excel vba pivot
1个回答
0
投票

你很接近,但它不是

PivotCaches
,而是
PivotTables
,我假设不止一个工作表上有数据透视表

Sub RefreshAllPivotTables()
    Dim ws As Worksheet
    Dim pt As PivotTable

    ' Loop through each worksheet in the workbook
    For Each ws In ThisWorkbook.Worksheets
        ' Loop through each pivot table in the worksheet
        For Each pt In ws.PivotTables
            pt.RefreshTable
        Next pt
    Next ws
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.