最近做了一个vba的小项目,用到了 Application.OnTime 定时器。Application.OnTime 常用于 vba excel 定时执行,页面刷新等方面,但关闭时excel时会遇到一些问题,比如不注销,定时器,excel 无法关闭。注销时报错等问题。
1.使用
RunWhen = Now + TimeValue("00:00:01")
Application.OnTime RunWhen, "ThisWorkbook.MyMacro", , schedule:=True ' Application.OnTime 执行时间,"执行函数", 执行结束时间, 是否有效
' 使用和注销 执行时间必须用一个公共变量,让定时器注册 和注销保持一个时间,否则 将会报错,而无法关闭excel
2.注销
Application.OnTime RunWhen, "ThisWorkbook.MyMacro", , schedule:=False