Excel 2016 年:打开和保存电子表格真的很慢(超过 15 分钟)
Excel 2016: Opening and Saving spreadsheets really slow (15+ minutes)
一段时间以来,我一直在使用 Excel 文件时遇到问题。我在 Windows 10 上使用 MS Office 2016 版本。Excel 2016 配备了一项通常称为 Power Query 的新功能。它是直接从数据库(SQL 服务器)提取数据的接口。来自数据库的数据用于填充数据透视表。数据透视表本身占用大量内存,但在以前的 Excel 版本中这不是问题 - 我一直使用它们的色调,而且文件从未如此沉重到 open/close。这是我尝试过的:
- 控制面板 - Change/Uninstall - 修复
- 关闭我可以通过 Excel 界面识别的所有连接(编辑链接、显示查询)- 复制并粘贴从 SQL 提取的所有数据集作为文本并删除查询。
- 关闭自动计算和自动恢复。
- 从外部来源删除所有对象(图标、图片等)。
- 禁用同步(One Drive for Business、Evernote、Sharepoint 等)
- 关闭所有其他 Office 应用
- 在 AppData 中识别 Excel 的目录并删除所有临时文件
- 杀死 excel 并重启电脑(不知何故一开始打开需要的时间少了一点)
- 复制我想用于演示的文件部分,并将所有预先计算的值替换为纯文本 - 文件在保存和打开时仍然非常慢。
- 在其他工作站上打开它。
注意:电子表格打开后即可使用。它对滚动、填充单元格等响应良好。唯一需要时间的是打开和保存。它只是显示一个空白屏幕 ("Excel Not Responding")。 Excel 不会占用太多内存(8GB 中的 206MB)或 cpu 保存时。我还注意到,出于某种原因,某些保存操作会增加文件的大小(例如 5MB -> 6.5MB),这可能相关也可能不相关。
如果您转到数据 |新查询 |查询选项,然后转到当前工作簿 |数据加载,是否有关于背景数据的部分?如果是这样,请取消选中 "Allow data preview to download in the background" 复选框,保存文档,然后查看 Excel 是否启动得更快。
我最终解压缩文件并手动检查内容是否有任何可疑之处。我在 xl/drawings
目录中发现了两个巨大的文件(vmlDrawing1.vml
和 vmlDrawing2.vml
- 是 vmlDrawing1.vml
的精确副本)。这些文件包含对 65536 个 相同 对象(ID 不同)的 XML 描述。我不知道有多少对象的副本最终在那里,因为我只插入了一次。
我从 xml 文件中删除了其中的 65535 个,将整个文件压缩并重命名为 .xlsx。令我高兴的是,excel 轻松打开它并且现在可以立即保存。
请注意,从 excel 中删除对象(查找 -> 转到特殊 -> objects/headers/footers -> 删除)没有用,巨大的文件仍然存在,只有手动干预有帮助。
一段时间以来,我一直在使用 Excel 文件时遇到问题。我在 Windows 10 上使用 MS Office 2016 版本。Excel 2016 配备了一项通常称为 Power Query 的新功能。它是直接从数据库(SQL 服务器)提取数据的接口。来自数据库的数据用于填充数据透视表。数据透视表本身占用大量内存,但在以前的 Excel 版本中这不是问题 - 我一直使用它们的色调,而且文件从未如此沉重到 open/close。这是我尝试过的:
- 控制面板 - Change/Uninstall - 修复
- 关闭我可以通过 Excel 界面识别的所有连接(编辑链接、显示查询)- 复制并粘贴从 SQL 提取的所有数据集作为文本并删除查询。
- 关闭自动计算和自动恢复。
- 从外部来源删除所有对象(图标、图片等)。
- 禁用同步(One Drive for Business、Evernote、Sharepoint 等)
- 关闭所有其他 Office 应用
- 在 AppData 中识别 Excel 的目录并删除所有临时文件
- 杀死 excel 并重启电脑(不知何故一开始打开需要的时间少了一点)
- 复制我想用于演示的文件部分,并将所有预先计算的值替换为纯文本 - 文件在保存和打开时仍然非常慢。
- 在其他工作站上打开它。
注意:电子表格打开后即可使用。它对滚动、填充单元格等响应良好。唯一需要时间的是打开和保存。它只是显示一个空白屏幕 ("Excel Not Responding")。 Excel 不会占用太多内存(8GB 中的 206MB)或 cpu 保存时。我还注意到,出于某种原因,某些保存操作会增加文件的大小(例如 5MB -> 6.5MB),这可能相关也可能不相关。
如果您转到数据 |新查询 |查询选项,然后转到当前工作簿 |数据加载,是否有关于背景数据的部分?如果是这样,请取消选中 "Allow data preview to download in the background" 复选框,保存文档,然后查看 Excel 是否启动得更快。
我最终解压缩文件并手动检查内容是否有任何可疑之处。我在 xl/drawings
目录中发现了两个巨大的文件(vmlDrawing1.vml
和 vmlDrawing2.vml
- 是 vmlDrawing1.vml
的精确副本)。这些文件包含对 65536 个 相同 对象(ID 不同)的 XML 描述。我不知道有多少对象的副本最终在那里,因为我只插入了一次。
我从 xml 文件中删除了其中的 65535 个,将整个文件压缩并重命名为 .xlsx。令我高兴的是,excel 轻松打开它并且现在可以立即保存。
请注意,从 excel 中删除对象(查找 -> 转到特殊 -> objects/headers/footers -> 删除)没有用,巨大的文件仍然存在,只有手动干预有帮助。