Excel中的内存不足错误

时间:2012-10-23 14:21:51

标签: excel vba

由于存在大量数据(集合中超过2,000,000个条目),Excel会终止我的VBA程序,其中包含"内存不足错误" (代码7)。我知道VBA不是处理这么多数据的合适语言,但有没有办法增加Excel用来运行VBA程序的内存?我确切地说它不是堆栈溢出,堆栈调用的数量限制为10。

提前致谢, 标记

1 个答案:

答案 0 :(得分:4)

取决于您使用的Excel版本。早于Excel 2007的版本往往具有非常有限的内存容量。从理论上讲,32位Excel 2007及更高版本总共可以使用高达2GB的内存,但实际上它的VBA通常很难超过512MB。
64位Excel 2010及更高版本要好得多:我已经成功使用了多达4千兆字节的VBA内存。

使用Dictionary而不是Collection可能会有更多内存有效率,但我没有测试过。