【发布时间】:2021-01-20 08:18:21
【问题描述】:
我需要暂停宏执行,直到所有计算完成。
我尝试使用带和不带DoEvents 的循环检查CalculationState,但循环永远不会结束。
Do Until Application.CalculationState = xlDone
DoEvents
Loop
【问题讨论】:
-
也许您将计算设置为手动?
-
绝对不是,对不起,这不是一个微不足道的问题,也没有网络上的解决方案......但是在我的代码中(超过 500 页......)证明代码继续使用错误的执行计算未完成的结果(计算是自动的,ITAERATION ON)
-
将计算设置为手动,然后强制它使用
YourSheet.Calculate进行计算,或者如果这不起作用,则使用Application.CalculateFull并在其后面加上DoEvents。 -
谢谢西蒙,也已经试过了
标签: vba calculation