Excel 尝试保存时无法使用可用资源完成此任务

Excel cannot complete this task with available resources while trying to save

我目前正在为以前编写的 VBA excel 应用程序添加功能。直到最近我在编辑一个模块时,一个错误(我现在已经修复)导致程序崩溃,之前一直没有出现异常问题。重新打开后,我发现我无法保存文档并收到错误消息“Excel 无法使用可用资源完成此任务。选择更少的数据或关闭其他应用程序”。关闭其他应用程序或重新启动计算机没有帮助。

从那时起,我偶尔可以通过随机组合以下操作使程序处于 editable 状态:

• 更改文件名

• 打开程序,然后取消进程然后重新打开

• 删除所有模块并重新导入它们

以下是有关解决此问题的 MSDN 信息的一些链接 https://support.microsoft.com/en-gb/kb/2779852 and https://support.microsoft.com/en-gb/kb/2655178

当我确实使文档处于保存文档的状态时。它会很好地保存,直到我关闭并重新打开 excel 文档,然后经常(但不一致)发生保存问题。

我需要为用户着想,因为这也会影响他们的功能。任何帮助将不胜感激,因为感觉我已经尝试了一切。

有关该计划的更多信息

该程序是一个数据库应用程序,用户可以在其中向数据库添加数据,还可以 table 以及图形表示形式查看数据。他们无权访问程序背后的 excel sheet。

目前由19个sheet、21个用户表单(相当大)、20个模块和8个class模块组成。它的大小刚刚超过 1600 KB。

当excel文件打开程序时:

要打开 excel 并能够查看代码,用户然后选择管理按钮,在输入正确的密码后显示应用程序并卸载所有用户表单。正是在这个阶段,我尝试保存程序并调用 VBA 进行编辑。

2/9/2015 附加信息 在安全模式下打开也增加了能够保存工作簿的可能性

这可能不是你的答案,但这个错误通常不是由一般文件大小(我有一些大约 40mb 的纸张)引起的,而是更一般的内存问题(excel 的较新版本似乎没有记忆漏得很厉害)

我发现要注意的一件大事是工作表中活动数据旁边和下方的空白行(您可以通过按控制端并查看最终位置轻松找到)

宏是用于在删除数据等时保留最后一行的草皮,我过去遇到过由流氓行引起的问题(添加定期保存操作可能是避免此问题的关键)

希望对您有所帮助

我无法最终找到问题的根源,但我确实找到了阻止问题发生的方法。我启动了一个全新的 excel sheet 并将我所有的代码模块和我所有的 excel 传播 sheet 导入其中。

如果您的工作簿执行网络查询或建立数据连接,您的新工作簿可能会再次变大。我遇到了同样的问题,最终在 https://youtu.be/ZsIDLnPf09U 找到了解决方案。该问题与存储的 Web 查询和数据连接所使用的内存有关。该解决方案将我的工作簿内存使用量从 GB 减少到 MB,并向我展示了如何保持这种状态。