VBA DoEvents |如何以及何时使用DoEvents函数?
Excel VBA DoEvents函数
在...的帮助下 VBA DoEvents,我们可以使代码在后台运行,并同时允许我们与excel和其他应用程序软件一起使用。 DoEvents不仅允许我们与其他软件一起使用,而且还可以中断代码的运行。
DoEvents函数将控制权传递给我们正在使用的计算机的操作系统。
如何使用DoEvents函数?
当需求很大时,需要大量的VBA代码。在这种情况下,excel会挂起并停止一段时间,甚至有时会变得无响应。
您可以在此处下载此VBA DoEvents Excel模板– VBA DoEvents Excel模板例如,请看下面的代码。
代码:
Sub DoEvents_Example1()调暗i只要i = 1至100000 Range(“ A1”)。Value = i Next i End Sub
上面的代码将插入从1到100000的序列号。执行该任务将很容易超过一分钟。在执行过程中,excel会挂起相当长的时间来完成任务。在此期间,excel将显示消息为“ Excel Not Responding”。
此外,我们无法访问正在处理的工作表。这是一件令人沮丧的事情,那么当代码在屏幕后面运行时,我们如何使excel工作表可以使用。
这可以通过添加VBA来实现 DoEvents函数.
代码:
Sub DoEvents_Example1()调暗i只要i = 1到100000 Range(“ A1”)。Value = i DoEvents下一个i End Sub
在代码中添加函数DoEvents的那一刻,我们可以访问Excel工作表。
从上面我们可以看到代码正在运行,但是我们可以访问工作表。
中断代码运行
当代码在屏幕后面运行时,我们可以添加行,列并删除它们,我们可以重命名工作表,我们还可以做很多其他事情。添加DoEvents的那一刻,它使vba代码快速运行,并使我们无法相信所提到的任务本身就是在运行。
- DoEvents函数的危险之一是当我们切换工作表或工作簿时,它会覆盖活动工作表的值。
- 另一个危险是,如果我们在单元格中输入任何值,代码执行就会暂停,甚至不会通知我们。