我有一个每周更新一次的文档,其中包含几个链接的工作表。大多数工作表是具有一周中每个日期的数据点的工作表,并且三个工作表是从数据工作表检索的汇总工作表。
每次更新时所做的基本上是向数据表添加新行,并在每个汇总表中创建新的汇总模块。该文档的总大小为900 kB。
我写的宏一直工作得很好,直到现在,突然我得到了一个“内存不足”的错误。我不明白为什么会有这样一个简单的任务,如添加7行,填写公式在其中一些列(为7行)和复制约20-30行的摘要表中的错误。
例如,现在我在自动填充部分得到一个错误
Range("A12:A13").Select
Selection.AutoFill Destination:=Range("A5:A13")
我已经在网上搜索了如何修复这个错误,但没有找到任何工作。我已经尝试删除几乎所有的旧公式(所以所有超过2周的都是纯值),正如this链接所建议的那样,但它不起作用。
有没有人有任何提示,可以做些什么来解决这样的错误?
1条答案
按热度按时间4c8rllxm1#
我现在已经从旧版本重新创建了该文件,它可以使用文件中完全相同的数据和完全相同的VBA代码。我在this链接的评论中读到,文件损坏可能有问题。链接中的文章还解释了除了与内存相关的问题之外,可能还有其他原因导致“内存不足”错误。
因此,我得出结论,我的文件以某种方式损坏,“内存不足”错误是由与使用过多内存无关(或最多松散相关)的事情引起的。
这个论点被广泛使用从一个主子函数调用的较小的子函数(意味着删除局部变量)所加强,并且错误会在没有特别大量内存使用的地方弹出,例如选择一个工作表或用仅包含值的单元格自动填充一个小范围。
如果将来有人遇到类似的问题,请尝试从旧版本重新创建该文件,看看问题是否仍然存在。