运行macros每2小时只有在前一次运行完成

我已经设置了一个macros来运行,每2小时通过使用:

Application.OnTime (TimeSerial(6, 0, 0)), "AutoUpdate" 

不过有时候会有问题,因为偶尔会出现这样的情况:macros将溢出2个小时以上,并且在前一个macros仍在运行的情况下再次运行,导致其崩溃。 有没有人知道一种方法来说“如果之前的”自动更新“仍在运行,那么不要再次运行”自动更新“?

定义一个布尔types的全局variables:

 Dim gRunning as Boolean 

在你的sub,添加下面的代码:

 If gRunning = True Then Exit Sub End If gRunning = True [...] gRunning = False