Excel设置程序延时或定时执行计划

Excel设置程序延时或定时执行计划使用 Application 对象的 OnTime 方法 可以设置程序的运行计划策略 比如 设置在某个特定时间 或者某段时间后运行程序 让程序在指定的时间后再运行如果需要在经过一段时间后开始执行程序 就可以使用 Application

大家好,欢迎来到IT知识分享网。

使用Application对象的OnTime方法,可以设置程序的运行计划策略。比如,设置在某个特定时间,或者某段时间后运行程序。

让程序在指定的时间后再运行

如果需要在经过一段时间后开始执行程序,就可以使用Application.OnTime方法,并结合Now + TimeSerial(time)安排经过一段时间(从现在开始计时)之后运行某个过程。

下面的案例,设置5秒后运行myTask过程(从现在开始计时)。

' ' 设置延时执行任务 ' Sub SetDelayedTask() Application.OnTime Now + TimeSerial("00:00:05"), "myTask" End Sub Sub myTask() MsgBoxEx "开始执行程序" End Sub 

定期运行程序以分析数据

也可以指定计划,在一天的特定时间执行程序,例如,在每天早额9点,10点,16点运行分析数据的程序,此时,仍需要使用Application.OnTime,并将发OnTime中的参数设置为具体时间。

下面的案例,就能在每天的9点,16点执行任务myTasks。

 ' ' 定时任务 ' Sub 执行定时任务() Application.OnTime TimeValue("09:00:00"), "myTask" Application.OnTime TimeValue("16:00:00"), "myTask" End Sub Sub myTask() MsgBoxEx "开始执行程序" End Sub 

周期性执行任务

Application.OnTime还可与设置任务每隔一段时间运行一次。

比如,编写一个计划运行程序,使之能够每隔10分钟就提醒用户保存工作簿。

' ' 周期性执行任务 ' Sub SetPeriodicTask() Application.OnTime Now + TimeValue("00:10:00"), "saveWorkbook" End Sub Sub saveWorkbook() If MsgBox("当前文件于10分钟前保存一次。现在要重新保存吗?", vbQuestion + vbYesNo) = vbYes Then ThisWorkbook.Save End If ' 回调上游过程 SetPeriodicTask End Sub

取消执行计划

要取消某个任务计划,可以把OnTime方法中的参数Schedule设置为False。

下面的案例中,取消原计划在17:00要执行的任务myTask。

' ' 取消任务计划 ' Sub cancelTask() Application.OnTime TimeValue("17:00:00"), "myTask", False End Sub Sub myTask() MsgBoxEx "开始执行程序" End Sub

注意

如果压迫取消多个任务计划,最直接有效的方法是直接关闭Excel。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/159516.html

(0)
上一篇 2025-01-15 20:45
下一篇 2025-01-15 21:00

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信