Dzwebs.Net

撰写电脑技术杂文十余年

vba DoEvents的含义

Admin | 2011-1-30 7:38:11 | 被阅次数 | 12730

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  了解Office的VBA编程的网友可能会遇到DoEvents这样的语句。当然,包括我在内,都会对DoEvents语句提出疑问,这DoEvents到底是啥意思呢?

  下面,我们来一起认识DoEvents的含义吧。

  DoEvents 函数功能:转让控制权,以便让操作系统处理其它的事件。

  DoEvents 函数会返回一个 Integer,DoEvents 返回 0。

  DoEvents 会将控制权传给操作系统。当操作系统处理完队列中的事件,并且在 SendKeys 队列中的所有键也都已送出之后,返回控制权。

  说得简单一点,DoEvents把控制权转交给操作系统,让word,excel,powerpoint能够处理其它的操作。否则,屏幕将处于黑屏状态而不能进行相应的日常化操作。

  ①示例代码一

  Sub MyStart()

  If Worksheets("sheet3").Cells(1, 1) = "Start" Then Exit Sub
  Worksheets("sheet3").Cells(1, 1) = "Start"
  Do While Worksheets("sheet3").Cells(1, 1) <> "end"
  Worksheets("Sheet2").Cells(4, 2) = Int(Rnd(99999) * 100000)
  DoEvents
  DoEvents
  DoEvents
  Loop
  End Sub

  ②示例代码二

  Do While Time < #11:59:00 PM#
  DoEvents
  If (MyCommand) Then
   Sleep 1000
   ActivePresentation.SlideMaster.HeadersFooters.Footer.Text = Format(Time, "hh:nn:ss")
  Else
   Exit Do
  End If
  VBA.DoEvents
  Loop


网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231