Excel VBA并没有提供定时器控件,但是用户可以通过Application对象的OnTime方法实现简单的定时器功能,如下面的代码所示。
Sub StartTimer() '注意改代码需要放在模块级
Sheet1.Cells(1, 2) = Sheet1.Cells(1, 2) + 1
Application.OnTime Now + TimeValue("00:00:01"), "StartTimer" '可在其他过程调用该语句,启动定时器
End Sub
代码解析:
StartTimer过程,使用Application对象的OnTime方法循环调用StartTimer过程实现每隔一秒钟运行一次StartTimer过程,从而在B1单元格中不断地显示程序累计运行时间,
第2行代码将B1单元格的值在原有的数字上加1。
第3行代码使用OnTime方法在1秒后重新调用StartTimer过程,使B1单元格的值不断的加1,从而显示程序累计运行时间。
应用于Application对象的OnTime方法能够安排一个过程在将来的特定时间运行.
Sub StartTimer() '注意改代码需要放在模块级
Sheet1.Cells(1, 2) = Sheet1.Cells(1, 2) + 1
Application.OnTime Now + TimeValue("00:00:01"), "StartTimer" '可在其他过程调用该语句,启动定时器
End Sub
代码解析:
StartTimer过程,使用Application对象的OnTime方法循环调用StartTimer过程实现每隔一秒钟运行一次StartTimer过程,从而在B1单元格中不断地显示程序累计运行时间,
第2行代码将B1单元格的值在原有的数字上加1。
第3行代码使用OnTime方法在1秒后重新调用StartTimer过程,使B1单元格的值不断的加1,从而显示程序累计运行时间。
应用于Application对象的OnTime方法能够安排一个过程在将来的特定时间运行.