Application.OnTime 方法 (Word)
启动在指定的时间运行宏的后台计时器。
语法
expression. OnTime
( _When_
, _Name_
, _Tolerance_
)
expression 是必需的。 一个代表 Application 对象的变量。
参数
名称 | 必需/可选 | 数据类型 | 说明 |
---|---|---|---|
When | 必需 | Variant | 运行宏的时间。 |
Name | 必需 | String | 要运行的宏的名称。 |
Tolerance | 可选 | Variant | 表示未在 When 指定的时间运行的宏最多经过多长时间(单位为秒)被取消。 宏不一定总在指定时间运行。 例如,如果正在进行排序操作,或者正在显示某一对话框,则宏将延迟到 Word 完成当前任务后才运行。 如果该参数值为 0(零)或被省略,则不管距 When 指定的时间逾期多久,宏都将运行。 |
备注
When 参数可以是指定时间 (的字符串(例如) "4:30 pm"
或 "16:30"
) ,也可以是函数(例如 TimeValue 或 TimeSerial ()返回的序列号, TimeValue("2:30 pm")
也可以 TimeSerial(14, 30, 00)
是) 。 例如,还可以包括日期 (或 "6/30 4:15 pm"
TimeValue("6/30 4:15 pm")
) 。
对于 Name 参数,请使用完整的宏路径来确保 (运行正确的宏, "Project.Module1.Macro1"
例如,) 。 对于要运行的宏,该文档或模板必须可当运行 OnTime 指令,同时由 When 指定的时间到达时。 因此,最好将宏存储在 Normal.dot 或自动加载的另一个全局模板。
使用 Now 函数和 TimeValue 或 TimeSerial 函数的返回值的总和来设置计时器来运行一个宏指定的一段时间后运行该语句。 例如,使用 Now+TimeValue("00:05:30")
5 分 30 秒后运行语句时运行的宏。
Word 可以维护设置 OnTime 只有一个后台计时器。 如果在现有计时器运行之前,您可以启动另一个计时器,则取消现有计时器。
示例
本示例在 3:55 P.M 运行当前模块中名为"Macro1"的宏。
Application.OnTime When:="15:55:00", Name:="Macro1"
此示例从运行示例时起 15 秒运行名为“Macro1”的宏。 宏的名称包括了项目名称和模块名称。
Application.OnTime When:=Now + TimeValue("00:00:15"), _
Name:="Project1.Module1.Macro1"
本示例在 1:30 P.M 运行名为"Start"的宏。宏的名称包括了项目名称和模块名称。
Application.OnTime When:=TimeValue("1:30 pm"), _
Name:="VBAProj.Module1.Start"
另请参阅
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈