有时候,在使用用户窗体设计用户界面时,我们想要在适当的位置显示时钟,方便用户实时查看时间。一个简单的示例如下图1所示。
图1
在图1中,我们放置了一个文本框控件(保留其默认名称TextBox1),并在其中显示实时时间。
实现上述效果很简单。设计好用户窗体界面后,在VBE中插入一个标准模块,输入下面的代码:
Sub StartTimer1()
Application.OnTime Now + TimeValue("00:00:01"),"NextTick1"
End Sub
Sub NextTick1()
UserForm1.TextBox1 = Format(Now, "yyyy/mm/dd hh:mm:ss AM/PM")
StartTimer1
End Sub
Sub StopTimer1()
On ErrorResume Next
Application.OnTime Now + TimeValue("00:00:01"),"NextTick1", , False
End Sub
运行NextTick1过程,然后显示用窗体,即可以看到显示实时时间的效果。
当然,也可以调整控件格式,使其显示更美观一些,如下图2所示。
图2
也可以使用其他合适的控件,如标签控件,如下图3所示。
图3
如果要停止时间的实时显示,运行StopTimer1过程即可。