在VBA多次(> 1000)次执行workbook.open时出现错误1004

时间:2015-10-20 10:35:35

标签: excel vba

我的宏创建了一个名为clsCalc的类,它打开一个外部工作簿,在其中执行一些计算并关闭工作簿而不保存(按设计)。

每次为每次计算创建类时,都会打开和关闭外部工作簿。在两台不同的机器上进行了1425次迭代之后,workbook.open函数拒绝打开该外部工作簿并抛出错误' 1004'。手动尝试打开工作簿也会失败,唯一的选择是重新启动Excel。然后它运行另外1425次迭代并抛出相同的错误。

我不知道有任何优秀的限制吗?感谢。

1 个答案:

答案 0 :(得分:0)

更新: 在上面的评论(DanL's)中提出https://support.microsoft.com/en-us/kb/210684建议之后,问题似乎通过每500次迭代(或错误发生之前的任何点)保存文件来解决。这将触发某种" flush"在Excel的缓存中。到目前为止,该工具已经达到了2000多次迭代而没有任何错误。