语法:Application.OnTime EarliestTime,Procedure,lastest Time,Schedule
4个参数,EarliestTime:运行开始的时间。Procedure:过程名。LastestTime:程序调用停止时间。选填,默认不停地调用第2参数的“过程”。Schedule:值为True 或 False,默认为True;为False 则停止这个“调用”。
示例:用OnTime方法制作个计时器。
Sub 计时()
[B2] = Time '用于时间 显示
If [C2].Value = "" Then
[C2] = Time ’记录 启始时间
End If
Application.OnTime Now + TimeValue("00:00:01"), "计时"
End Sub
Now + TimeValue("00:00:01") 为第1个参数,调用时间开始于(“现在时刻”的1秒后);调用的过程名"计时",这样[B2]单元格 的时间就会每隔1秒,更新一次。
Sub 结束计时()
Application.OnTime Now + TimeValue("00:00:01"), "计时", , False
[D4].Value = [B2].Value
[C4].Value = [C2].Value
[C2].ClearContents
n = [D4].Value - [C4].Value 'n是1个带小数的数字
[E2].Value = LTrim(Str(Minute(n))) & " 分 " & LTrim(Str(Second(n))) & " 秒" ‘把n 转化为时间格式
End Sub
TimeValue("00:00:01") 中“小时:分钟:秒”;最小值为1秒。不要写为Application.OnTime Now,"计时"。这样会不停地调用,直接程序死锁,点不了“终止”按钮。