Forum Discussion
wbrock1302gmailcom
Jul 26, 2026Copper Contributor
TIME FUNCTION
HOW DO YOU GET TIME TO ADVANCE AUTOMATICALLY
NikolinoDE
Jul 27, 2026Platinum Contributor
Alternatively, you could use VBA.
This version:
- updates every second,
- stops cleanly when closing the workbook,
- avoids duplicate timers if you accidentally run StartClock twice.
Standard Module (Insert → Module):
Option Explicit
Dim NextTime As Date
Dim ClockRunning As Boolean
Sub StartClock()
If ClockRunning = True Then Exit Sub
ClockRunning = True
UpdateClock
End Sub
Sub UpdateClock()
If ClockRunning = False Then Exit Sub
Range("A1").Value = Time
Range("A1").NumberFormat = "hh:mm:ss"
NextTime = Now + TimeValue("00:00:01")
Application.OnTime NextTime, "UpdateClock"
End Sub
Sub StopClock()
On Error Resume Next
ClockRunning = False
Application.OnTime NextTime, "UpdateClock", , False
End SubOptional: automatically stop when closing Excel
In ThisWorkbook (not Module):
Private Sub Workbook_BeforeClose(Cancel As Boolean)
StopClock
End SubOR...simply as Formula: =NOW()
My answers are voluntary and without guarantee!
Hope this will help you.