接着上期《StatusBar是什么?》说,执行的时间一起显示出来呢?
像这样:
拿到大问题不知道如何解决的时候,可以把大问题拆分成若干个小问题,例如,执行时间如何显示在状态栏上这个问题,就可以拆分成:
如何在状态栏上显示信息
如何显示执行时间
执行时间可以现在进入程序的时候记录一个时间,执行到某个地方的时候再获取一个时间,取时间差就好了。
其中NOW返回当前的系统日期和时间,StaTime和TimeDiff定义成日期类型。
Dim TargetRow As Integer
Dim StaTime As Date
Dim TimeDiff As Date
StaTime = Now
For TargetRow = 1 To 10
TimeDiff = Now - StaTime
Application.StatusBar = TargetRow & "/10 执行中 " & TimeDiff
Next
Application.StatusBar = False
End Sub
扩展:
时间差计算 DateDiff
1
DateDiff
DateDiff(时间差的类型, 日期1, 日期2)
其中时间差类型为:
= 时间差类型 =
yyyy
年
q
季
m
月
y
一年的日数
d
日
w
一周的日数
ww
周
h
时
n
分
s
秒
例
Sub StaBar()
Dim TargetRow As Integer
Dim StaTime As Date
Dim TimeDiff As Integer
StaTime = Now
For TargetRow = 1 To 10
TimeDiff = DateDiff("s", StaTime, Now)
Application.StatusBar = TargetRow & "/10 执行了 " & TimeDiff & " 秒"
Next
Application.StatusBar = False
End Sub
联系客服