长时间运行宏后,即使宏完成,Excel中的ScreenUpdating也会完全停止工作。我从来没有将它设置为false但它的行为就好像它被设置为false并且使Excel再次更新屏幕的唯一方法是关闭它并重新打开它。然而,VBA屏幕有效。我试图运行DoEvents和ScreenUpdating = True但Excel窗口不会直观更新(它没有冻结)。无论如何清除ScreenUpdating缓冲区?我已经尝试手动将其设置为false并且无效。
如果要复制此错误,请使用此代码
Application.OnTime(现在+ TimeValue(" 0:00:05"))," macroName",(现在+ TimeValue(" 0:00:10&#) 34;)),真实
然后我有代码复制并粘贴一些值,我控制循环停止时,例如单元格A1中的倒计时值。
答案 0 :(得分:2)
我在Excel 2013中遇到了这个问题。对我来说,这是因为我加载了一个用户窗体。然而,这非常非常奇怪。经过大量的反复试验后,我发现导致它的原因是使用了Sheets(“MySheet”)。激活命令。在我显示并关闭表单之后,我在显示表单之前(即,当用户单击“显示表单”按钮时)立即将此命令从运行中移出。这修复了它。尝试摆弄你的sheet.activate命令。