我需要每 120 秒运行一段代码。我正在寻找一种在 VBA 中执行此操作的简单方法。我知道可以从 Auto_Open
事件中获取计时器值,以防止必须使用魔数(Magic Number),但我不太明白如何启动计时器来运行某些东西每 120 秒一次。
如果可以避免的话,我真的不想在 sleep 中使用无限循环。
<小时/>编辑:
根据提供的答案交叉发布位于:Excel VBA Application.OnTime. I think its a bad idea to use this... thoughts either way?
最佳答案
当工作簿首次打开时,执行以下代码:
alertTime = Now + TimeValue("00:02:00")
Application.OnTime alertTime, "EventMacro"
然后在工作簿中有一个名为“EventMacro”的宏来重复它。
Public Sub EventMacro()
'... Execute your actions here'
alertTime = Now + TimeValue("00:02:00")
Application.OnTime alertTime, "EventMacro"
End Sub
关于VBA 宏定时器样式每隔设定的秒数(即 120 秒)运行代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2319683/