在尝试从宏中访问外部API函数集时,我发现有必要添加一个延迟,以便有时间让外部API处理选择。
使用Application.Wait或Application.Sleep无法实现这一点会带来一些困难。
在线搜索让我尝试使用GetTickCount或timeGetTime - 由于延迟功能无法退出,因此两者都无法正常工作。
问题是如何实现这个?
答案 0 :(得分:0)
相反,我使用函数Now和DateAdd:
实现了延迟Function Delay(Seconds As Long)
Dim StopTime As Date: StopTime = DateAdd("s", Seconds, Now)
Do While Now < StopTime
DoEvents
Loop
End Function
以下更新了毫秒精度
Function Delay(Seconds As Single)
Dim StopTime As Single: StopTime = Timer + Seconds
Do While Timer < StopTime
DoEvents
Loop
End Function