当我执行我的代码时(这需要3-4分钟。在Excel中执行),当我在excel或我的用户表单中单击某些内容时,它会冻结,变白,几乎崩溃……当执行准备就绪时,一切都会恢复正常。
当然,在执行过程中不能在excel中工作是正常的,但是如何避免excel“崩溃”呢?
发布于 2017-03-03 14:00:02
你在代码中有循环吗?
如果是这样的话,在初始化循环之后添加下面这行代码,它应该有助于解决您的问题!
DoEvents
发布于 2013-03-16 12:47:12
防止这类问题的最好方法是对您的代码进行基准测试,以确定是什么花了这么长时间。如果您的代码运行时间超过3分钟,那么您几乎肯定有优化的空间。
以下是您需要采取的步骤:
一个臭名昭著的性能低下的反模式需要注意的是在循环期间选择对象。
发布于 2013-03-16 00:33:22
您需要做的是创建一个覆盖Excel的自定义UserForm,就像Progress Bar一样。您还需要研究强制表单保持在顶部的方法,就像modal form
一样。你不能使用modal form
的,因为它们会停止执行。
https://stackoverflow.com/questions/15436596
复制相似问题