我使用许多不同的VBA程序遇到了这个问题,所以我想我可能在Excel或VBA编辑器中有一些不正确的设置。老实说,经过大量的网络搜索,我很无能为力。
基本上,我将运行一段正常的代码,应用程序(Excel和VBA编辑器)将进入(无响应)模式。 但是代码运行正常。代码完成后,应用程序将不再处于非响应模式,一切都恢复正常
对于那些认为出现问题的用户来说真的有点沮丧,因为他们只是需要一段时间来运行代码。
任何帮助都会很棒!谢谢!
答案 0 :(得分:5)
尝试在代码中添加DoEvents
语句,以便在漫长的过程中经常执行DoEvents
。见http://support.microsoft.com/kb/118468/en-us
这会将控制权返回给操作系统,这样操作系统就可以在程序运行时完成它需要做的事情,这可以防止操作系统认为你的程序没有响应。
答案 1 :(得分:0)
基本上,我将运行一段正常的代码,应用程序(Excel和VBA编辑器)将进入(无响应)模式。但是代码运行正常。代码完成后,应用程序将不再处于非响应模式,一切都恢复正常
用户界面没有响应,因为您正在进行一系列处理以响应UI事件。
如果这对您和您的用户来说是可以接受的,那么一切都很好。如果没有,请考虑在background thread上完成工作。