对于某些类型的数据分析,数据透视表可能非常方便。如果您的工作簿包含多个基于相同数据的数据透视表,则您可能想知道是否有一种方法可以一次全部更新它们,而不是逐个检查并更新它们。

没有Excel命令可以更新所有数据透视表,但是您可以创建一个简短的宏来为您完成工作。下面的宏RefreshAllPivots逐步浏览工作簿中的每个工作表,检查是否有任何数据透视表,然后更新它们。

Sub RefreshAllPivots()

Dim wks As Worksheet     Dim pt As PivotTable

For Each wks In Worksheets         For Each pt In wks.PivotTables             pt.RefreshTable         Next pt     Next wks End Sub

如果对多个数据透视表进行大量工作,则可能需要将宏分配给快捷键,工具栏按钮或菜单选项,以便您可以更轻松地运行它。 (_ExcelTips的其他问题中介绍了有关如何为工具栏,快捷键和菜单分配宏的信息。)

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(2287)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: