【问题标题】:Workbook with Pivot Tables Opens Very Slowly带有数据透视表的工作簿打开速度非常慢
【发布时间】:2020-12-14 15:59:05
【问题描述】:

我正在使用 Windows 10 上的 Excel 2013 工作簿。它有十个数据透视表,需要很长时间(约 2 分钟)才能打开。我尝试了很多方法来加快速度,但无济于事。以下是规格:

工作簿大小约为 40 MB。它是一个 *.xlsm 文件,其中包含可通过单击按钮激活的重要 VBA 应用程序。但是,没有 Workbook Open 事件和工作表级别事件。

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

所有数据透视表都设置为在打开时不刷新。它们也被设置为不保存数据。 (我尝试了这两种方法,如果任何设置它来保存数据会导致它需要更长的时间才能打开。)

数据透视表不包含公式。数据工作表没有公式。整个工作簿的公式很少。该应用程序创建公式来填充工作表,然后将所有公式转换为值。

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

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

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

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

数据透视表会自然而然地出现缓慢吗?我可以更改任何属性或设置以加快工作簿打开过程吗?许多人使用这些工作簿并非常不满意。

【问题讨论】:

    标签: excel pivot-table excel-2013


    【解决方案1】:

    在数据透视表内右键单击,数据透视表选项,数据选项卡,清除/取消选中“将源数据与文件一起保存”复选框。

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

    **只有在没有外部数据的情况下才取消选中此项。

    干杯

    【讨论】:

    • 我曾尝试使用“使用文件保存源数据”。最初,所有数据透视表都未选中此框。我认为通过选中它可以保存数据,因此不需要在打开时重新填充数据透视表,但正如你所说,当我选中该框时,性能更差。
    • 我将研究共享缓存的想法。数据表很大,每个数据透视表只使用它的一部分,但如果我让它们都查看同一个更大的缓存并只显示不同表中的不同子集,那么这可能会奏效。
    • 知道了,是的,这确实是我认为唯一可能发生的事情,尤其是对于大型数据集。如果可以为每个枢轴使用相同的数据范围,我会尝试这条路线。另一种选择是使用 Power Pivot/Power Query,它可以很好地压缩数据。
    • contextures.com/xlPivot11.html 这是处理数据透视缓存的好资源。祝你好运
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-07
    • 2017-11-22
    • 2016-10-10
    • 1970-01-01
    • 1970-01-01
    • 2018-08-25
    相关资源
    最近更新 更多