数据透视表非常适合某些类型的数据分析。由于数据透视表进行了大量的数字运算,因此Excel用来更快地处理它们的一种技术是创建“中间数据集”

跟…​共事。默认情况下,此中间数据​​集与工作表一起存储,因此数据透视表可以有时有时会大大增加工作簿的大小。

如果您的工作簿包含多个数据透视表(全部基于一个数据源),则Excel可以为每个数据透视表创建一个中间数据集,而不是使用一个中间数据集。当然,这可能会很快增加工作簿的大小。

您可以通过修改创建数据透视表时使用的选项来控制Excel如何创建中间数据集。

。像往常一样创建数据透视表。

。显示功能区的“选项”选项卡(Excel 2007和Excel 2010)或“分析”选项卡(Excel 2013)或“数据透视表分析”选项卡(Excel的更高版本)。 (仅当您在数据透视表中选择一个单元格时,此选项卡才可见。)

。在功能区的左端,单击“数据透视表”组中的“选项”工具。 Excel将显示“数据透视表选项”对话框。

。确保显示了“数据”选项卡。 (请参见图1。)

。清除“使用文件保存源数据”复选框。

。选择刷新打开复选框。

。单击确定以关闭数据透视表选项对话框。

如果您不需要,则不需要选中“打开时刷新”复选框(步骤6),但是如果您不想这样做,则需要记住每次打开工作簿时都要手动刷新数据透视表。

如果您的工作簿中已经有很多数据透视表,并且您不想再经历创建它们的过程,则可以使用宏逐步浏览数据透视表并修改缓存索引,然后关闭对数据透视表的保存。中间数据到磁盘。下面的宏将完成这些任务:

Sub PTReduceSize()

Dim wks As Worksheet     Dim PT As PivotTable

For Each wks In ActiveWorkbook.Worksheets         For Each PT In wks.PivotTables             PT.RefreshTable             PT.CacheIndex = 1             PT.SaveData = False         Next     Next End Sub

宏运行后(不会花很长时间),您应该使用“另存为”选项保存工作簿。这将写入一个新的工作簿文件,您将能够比较此更改减少了工作簿大小的程度。但是,请记住,由于中间数据没有保存到磁盘,因此第一次打开工作簿时,数据透视表的刷新需要更长的时间。

注意:

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

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

本技巧(8669)适用于Office 365中的Microsoft Excel 2007、2010、2013、2016、2019和Excel。您可以在此处为Excel的较早菜单界面找到此技巧的版本: