How to create stopwatch in Excel worksheet?
If there is a stopwatch in your worksheet, you will know the time to finish a job. How can you create a stopwatch in a sheet with a Start, Stop, and Reset Button as following screenshot shown? If you click the Start button, it will start time, if you click Stop button, it will stop time, and the Reset button can help you to reset time. This article, I will talk about how to create a simple and handy stopwatch in Excel.
To create a stopwatch with three buttons, Start, Stop and Reset, please do with the following steps one by one.
Firstly, insert three command buttons.
1. Click Developer > Insert > Command Button, see screenshot:
2. Then drag the mouse to draw a button, after inserting the button, you can change the button caption, please click Developer > Properties, in the Properties dialog, enter the new caption “Start” for this button in the textbox beside the Caption, see screenshots:
3. Repeat the above two steps to insert other two buttons and caption them as “Stop” and “Reset”, see screenshot:
4. After inserting the buttons, you should exit the design mode by clicking Developer > Design Mode.
Secondly, create a VBA code.
5. And then, right click the current worksheet tab, and choose View Code, in the popped out Microsoft Visual Basic for Applications window, please copy and paste the following code into the Sheet Code:
VBA code: Create stopwatch:
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("C2") = 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("C2").Value = Format(hh, "00") & ":" & Format(MM, "00") & ":" & Format(SS, "00") & "." & Format(HM, "00") If ResetIt = True Then Range("C2") = 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("C2").Value = Format(0, "00") & ":" & Format(0, "00") & ":" & Format(0, "00") & "." & Format(0, "00") LastTime = 0 ResetIt = True End Sub
Note: In the above code, C2 is the cell where the stopwatch time will be inserted, and the CommandButton1, CommandButton2, CommandButton3 are the button names, you can view the exact button name from the Name Box, see screenshot:
Thirdly, format the stopwatch time cell.
6. Then you should format the time cell as Text format, and you can change the cell size, font, font color, background, etc. as you need, see screenshot:
7. After finishing above steps, from now on, when you click Start button, the time will be start now, and click Stop button, it will stop time, the Reset button will reset the time, see screenshot:
Best Office Productivity Tools
Supercharge Your Excel Skills with Kutools for Excel, and Experience Efficiency Like Never Before. Kutools for Excel Offers Over 300 Advanced Features to Boost Productivity and Save Time. Click Here to Get The Feature You Need The Most...
Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier
- Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
- Open and create multiple documents in new tabs of the same window, rather than in new windows.
- Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!