Application.OnTime 方法 (Excel)

安排一个过程在将来的特定时间运行(既可以是具体指定的某个时间,也可以是指定的一段时间之后)。

语法

表达式OnTime (EarliestTimeProcedureLatestTimeSchedule)

expression:表示 Application 对象的变量。

参数

名称 必需/可选 数据类型 说明
EarliestTime 必需 Variant 希望此过程运行的时间。
Procedure 必需 String 要运行的过程名。
LatestTime 可选 Variant 可以运行相应过程的最后时间。 例如,如果 LatestTime 设置为 EarliestTime + 30,并且 Microsoft Excel 由于另一个过程正在运行而未在 EarliestTime 处于就绪、复制、剪切或查找模式,则 Excel 将等待 30 秒,等待第一个过程完成。 如果 Excel 在 30 秒内未处于就绪模式,则不会运行该过程。 如果省略此参数,Excel 将等到过程可以运行。
Schedule 可选 Variant 如果为 True,则安排新的 OnTime 过程。 如果为 False,则清除以前设置的过程。 默认值为 True

备注

使用 Now + TimeValue(time) 来计划从现在起) 经过特定时间 (计数时要运行的内容。 使用 TimeValue(time) 可安排某个过程只运行指定的时间。

EarliestTime 的值舍入到最接近的秒。

“计划” 设置为 False ,以清除以前使用相同的 ProcedureEarliestTime 值设置的过程。

Procedure 必须不带参数,并且不能在自定义类或表单中声明。

示例

此示例从现在 起运行my_Procedure 15 秒。

Application.OnTime Now + TimeValue("00:00:15"), "my_Procedure"

此示例在下午 5 点运行 my_Procedure

Application.OnTime TimeValue("17:00:00"), "my_Procedure"

本示例撤消前一个示例对 OnTime 的设置。

Application.OnTime EarliestTime:=TimeValue("17:00:00"), _ 
 Procedure:="my_Procedure", Schedule:=False

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。