带有数据透视表的工作簿打开速度非常慢

Workbook with Pivot Tables Opens Very Slowly

我正在 Excel 2013 工作簿上 Windows 10。它有十个枢轴 tables 并且需要很长时间(~2 分钟)才能打开。我已经尝试了很多方法来加快速度,但都无济于事。以下是规格:

工作簿的大小约为 40 MB。它是一个 *.xlsm 文件,带有一个重要的 VBA 应用程序,可以通过单击一个按钮来激活。但是,没有工作簿打开事件,也没有工作表级事件。

所有数据透视表 table 均基于工作簿中单个工作表中的数据。没有外部数据。

所有数据透视表 table 都设置为打开时不刷新。它们也被设置为不保存数据。 (我尝试了两种方法,如果将其设置为保存数据会导致打开时间更长。)

主元 table 不包含任何公式。数据工作表没有公式。整本工作簿只有很少的公式。该应用创建公式来填充工作表,然后将所有公式转换为值。

主元 tables 确实有条件格式,但即使将它们全部删除,工作簿仍然需要大约相同的时间才能出现。

这不是启动延迟问题。有一个对话框告诉我负载是 0% … 20% … 40% … 完成。

我只从工作簿中删除了数据透视 table 工作表,工作簿在几秒钟内就出现了。

我还通过复制所有工作表和代码创建了一个新的工作簿,认为可能存在低级损坏问题,但副本并没有更快地出现。

枢轴tables 自然会变慢吗?我可以更改任何 属性 或设置以加快工作簿打开过程吗?许多人使用这些工作簿并且非常不满意。

在数据透视表内右键单击,数据透视表 Table 选项,数据选项卡,clear/uncheck 复选框“用文件保存源数据”。

每次创建 Pivot 时,Excel 都会在文件中存储源数据的副本并将其用于 运行 查询。如果您分别创建了 10 个 Pivots,您将在文件中保存 10 个缓存,使其成为 bloated/slow。要优化文件,您需要创建一个数据透视表,然后为使用相同数据 table 的所有其他数据透视表复制该数据透视表。这将确保您只使用 1 个缓存而不是 10 个。另外,作为奖励,当您刷新一个缓存时,它会刷新所有缓存。

**只有在没有外部数据时才取消选中此选项。

干杯