网站首页/办公软件列表/内容

运用Excel做个秒表计时器案例图文教程

办公软件2023-12-22阅读
Microsoft Excel是Microsoft为使用Windows和Apple Macintosh操作系统的电脑编写的一款电子表格软件。直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,使Excel成为最流行的个人计算机数据处理软件。

有时候我们想知道在Excel中做一件事情需要多长时间,可以用VBA在Excel中做一个秒表计时器,在做之前启动秒表,做完后停止秒表看用了多长时间,如图。这个秒表在单元格中显示时间,可以实现秒表的基本功能:单击“开始”按钮开始计时,单击“停止”按钮暂停与停止,再次单击“开始”按钮继续,单击“复位”按钮归零。

??? 利用Excel做个秒表计时器实例教程_本站

??? 下面我们以Excel 2003为例来说明其制作过程,示例文件在文章结尾处提供下载。

??? 1.在“Sheet1”工作表中打开“Visual Basic 工具栏”。方法是在菜单栏中右击鼠标,在弹出的快捷菜单中选择“Visual Basic ”。???单击“控件工具箱”按钮,打开“控件工具箱”。

??? 利用Excel做个秒表计时器实例教程_本站?利用Excel做个秒表计时器实例教程_本站?

??? 选择“命令按钮”工具,在工作表中画3个按钮,其默认名称依次为“CommandButton1”、“CommandButton2”、“CommandButton3”。

??? 2.按Alt+F11,打开VBA编辑器,在“工程”窗口中双击“Sheet1(Sheet1)”,在右侧的代码窗口中粘贴下面的代码:

Public StopIt As Boolean
Public ResetIt As Boolean
Public LastTime
Private Sub CommandButton1_Click()
Dim StartTime, FinishTime, TotalTime, PauseTime
StopIt = False
ResetIt = False
If Range("b8") = 0 Then
? StartTime = Timer
? PauseTime = 0
? LastTime = 0
Else
? StartTime = 0
? PauseTime = Timer
End If
???????????
StartIt:
? DoEvents
? If StopIt = True Then
??? LastTime = TotalTime
??? Exit Sub
? Else
??? FinishTime = Timer
??? TotalTime = FinishTime - StartTime + LastTime - PauseTime
??? TTime = TotalTime * 100
??? HM = TTime Mod 100
??? TTime = TTime \ 100
??? hh = TTime \ 3600
??? TTime = TTime Mod 3600
??? MM = TTime \ 60
??? SS = TTime Mod 60
??? Range("b8").Value = Format(hh, "00") & ":" & Format(MM, "00") & ":" & Format(SS, "00") & "." & Format(HM, "00")
??? If ResetIt = True Then
????? Range("b8") = Format(0, "00") & ":" & Format(0, "00") & ":" & Format(0, "00") & "." & Format(0, "00")
????? LastTime = 0
????? PauseTime = 0
????? End
??? End If
??? GoTo StartIt
? End If
End Sub

Private Sub CommandButton2_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
? StopIt = True
End Sub

Private Sub CommandButton3_Click()
? Range("b8").Value = Format(0, "00") & ":" & Format(0, "00") & ":" & Format(0, "00") & "." & Format(0, "00")
? LastTime = 0
? ResetIt = True
End Sub

??? 说明:上述代码将在B8单元格中显示秒表时间,也可以将其改为其他单元格。代码中使用了Timer函数,Timer函数返回一个Single,代表从午夜开始到现在经过的秒数。本例中未消除跨零点错误,因而请勿跨零点使用。

??? 3.关闭VBA编辑器。在工作表中右击“CommandButton1”按钮,在弹出的菜单中选择“属性”,弹出“属性”窗口。

??? 利用Excel做个秒表计时器实例教程_本站

?? 在“属性窗口”中,将“CommandButton1”按钮的“Caption”属性改名为“开始”。

??? 利用Excel做个秒表计时器实例教程_本站

??? 然后分别将“CommandButton2”、“CommandButton2”按钮的“Caption”属性改为“停止”和“复位”。

??? 在“Visual Basic”工具栏中单击“退出设计模式”按钮退出设计模式。

??? 利用Excel做个秒表计时器实例教程_本站

??? 4.设置B8单元格的单元格格式为“文本”,调整单元格大小、字体和背景,并调整3个按钮到适当的位置。然后依次单击各个按钮进行测试。


Excel整体界面趋于平面化,显得清新简洁。流畅的动画和平滑的过渡,带来不同以往的使用体验。

……

相关阅读