如何在 vba 中刷新数据透视表(带有示例)


您可以使用以下方法通过 VBA 刷新 Excel 中的数据透视表:

方法一:刷新特定数据透视表

 Sub RefreshPivotTable()
    Sheet1.PivotTables(" PivotTable1 ").Refreshtable
End Sub

这个特定的宏只会刷新工作簿第 1工作表中名为PivotTable1 的数据透视表中的值。

方法 2:刷新工作簿中的所有数据透视表

 Sub RefreshAllPivotTables()
    ThisWorkbook.RefreshAll
End Sub

这个特定的宏将刷新整个工作簿中每个数据透视表的值。

以下示例展示了如何在实践中使用每种方法。

示例 1:刷新特定数据透视表

假设我们根据 Excel 中的一组数据创建了一个数据透视表:

当我们位于 Excel 顶部功能区的“数据透视表分析”选项卡上时,我们可以在左上角看到该数据透视表称为PivotTable1

假设我们将数据集中点列的最后一个值从22更改为200

我们可以创建以下宏来刷新这个特定数据透视表的值:

 Sub RefreshPivotTable()
    Sheet1.PivotTables(" PivotTable1 ").Refreshtable
End Sub

当我们运行这个宏时,数据透视表的值会自动更新:

示例 2:刷新工作簿中的所有数据透视表

假设我们根据 Excel 中的一组数据创建了两个数据透视表:

第一个数据透视表显示每个团队和每个位置的得分总和。

第二个数据透视表显示了按球队和位置划分的平均得分。

假设我们将数据集中点列的最后一个值从22更改为200

我们可以创建以下宏来刷新整个工作簿中所有数据透视表的值:

 Sub RefreshAllPivotTables()
    ThisWorkbook.RefreshAll
End Sub

当我们运行这个宏时,两个数据透视表中的值都会自动更新:

其他资源

以下教程说明如何在 VBA 中执行其他常见任务:

VBA:如何添加范围内的值
VBA:如何计算范围的平均值
VBA:如何计算范围内的唯一值

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注