我有一个Excel工作表,其中包含以下宏。我想每秒循环一次,但如果我能找到这样做的函数,我就会挂起。有没有可能?
Sub Macro1()
'
' Macro1 Macro
'
Do
Calculate
'Here I want to wait for one second
Loop
End Sub
发布于 2009-10-09 15:40:34
Application.Wait Now + #0:00:01#
或者(对于Excel 2010和更高版本):
Application.Wait Now + #12:00:01 AM#
发布于 2009-10-09 15:43:06
将这个添加到你的模块中
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
或者,对于64位系统,请使用:
Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As LongPtr)
在宏中调用它,如下所示:
Sub Macro1()
'
' Macro1 Macro
'
Do
Calculate
Sleep (1000) ' delay 1 second
Loop
End Sub
发布于 2014-06-02 04:21:19
而不是使用:
Application.Wait(Now + #0:00:01#)
我更喜欢:
Application.Wait(Now + TimeValue("00:00:01"))
因为之后阅读起来容易多了。
https://stackoverflow.com/questions/1544526
复制相似问题