How Do Show Running Clock in Excel

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 1

Q : I'd like to show a clock in cell A1 of Excel 2007.

I'm familiar with NOW() and TODAY() but it


doesn't refresh itself every 1 minute like I want it to. You know, like a running clock. I just want the
current time in h:mm to be in cell A1. Is this possible?

From this clock I will do further calculations like How long has it been since I last did Activity X, Y, and
Z. Thanks SO.

A : See the below code (taken from this post)


Put this code in a Module in VBA (Developer Tab -> Visual Basic)

Dim TimerActive As Boolean


Sub StartTimer()
Start_Timer
End Sub
Private Sub Start_Timer()
TimerActive = True
Application.OnTime Now() + TimeValue("00:01:00"), "Timer"
End Sub
Private Sub Stop_Timer()
TimerActive = False
End Sub
Private Sub Timer()
If TimerActive Then
ActiveSheet.Cells(1, 1).Value = Time
Application.OnTime Now() + TimeValue("00:01:00"), "Timer"
End If
End Sub
You can invoke the "StartTimer" function when the workbook opens and have it repeat every minute
by adding the below code to your workbooks Visual Basic "This.Workbook" class in the Visual Basic
editor.

Private Sub Workbook_Open()


Module1.StartTimer
End Sub
Now, every time 1 minute passes the Timer procedure will be invoked, and set cell A1 equal to the
current time.

You might also like