excel2007 内存不足,画面不能正常显示
excel2007 内存不足,画面不能正常显示
我做了一个vba工具,从db批量检索数据,
然后针对检索出来的每一条数据,印刷50个画面也就是50个sheet页(每个sheet页也从db检索数据),
当印刷完前面几条数据后,就出异常,显示内存不足,然后excel画面就显示不全,变白了。
请问大虾们,谁遇到过这情况,怎么解决的。
我采用了以下方式,还没找到原因:
1:增大虚拟内存
2:每执行完一次就清空剪切板。
我接下来准备调查是不是访问db过于频繁的问题
[解决办法]
excel2007的帮助里面有这么一句话,请参考。《工作表和工作簿规范与限制》
工作簿中的工作表个数 受可用内存的限制(默认值为 3 个工作表)
[解决办法]
32位环境当中,excel2007的excel.exe进程内存使用超过1.5G~1.7G就会出现内存不足的提示了。即使这台电脑还有内存未被使用
不修改代码的情况下
彻底解决的办法
使用大内存的电脑,64位操作系统,office 2010 64位的版本
就不会遇到这个问题了
临时的解决办法
如果是在XP/2003 32bit系统当中,电脑的内存有4G的话,在boot.ini里面加上 /3GB参数
找到multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /NoExecute=OptIn
后面加上一段 /3GB /USERVA=2900 ,这样能分配给单个进程的内存会加大. 另外把这个参数修改为 /noexecute=alwaysoff
但是这个设置可能会造成操作系统不稳定的情况,例如显卡驱动丢失等现象。如果感觉对系统影响太大,删除掉添加的参数再重启就可以了。