NOW

Date & Time Functions
(4.9/5)

Returns the current date and time. Provides real-time timestamp functionality, updating automatically on worksheet recalculation, essential for time-based calculations and logging.

Interactive Formula Tester

=NOW("")

Complete Theory & Understanding

Master the fundamentals of Excel NOW function

Core Concept

The NOW function returns the current date and time as a serial number, updating automatically whenever the worksheet recalculates. Excel stores dates and times as serial numbers where the integer part represents the date (days since January 1, 1900) and the decimal part represents the time (fraction of a day). This makes NOW essential for real-time calculations, timestamping, and time-based business logic.

Why Use NOW?

  • Automatically timestamp data entries and log file entries
  • Calculate elapsed time, time differences, and duration from stored timestamps
  • Track calculation times and performance metrics
  • Create dashboards that show current time and auto-updating timestamps

Key Characteristics

Automatic Updates

NOW() recalculates every time the worksheet recalculates, ensuring it always reflects the current moment. This happens on manual recalculation, file open, or any cell edit.

NOW() updates on F9 (recalculate)

Serial Number Format

Returns a decimal number where the integer part is the date serial number and the decimal part represents time (0.0 = midnight, 0.5 = noon, 0.9999 = almost midnight).

45310.625 = Jan 15, 2024 3:00 PM

No Arguments Required

NOW() takes no parameters and always returns the current system date and time. It cannot be "set" to a specific time.

=NOW() always current

Time Zone Dependency

NOW() uses the system clock's time zone setting. The returned time reflects the computer's local time zone, not UTC or any specific zone.

System time = NOW() time

Function Anatomy

=NOW(parameters...)
Required
Parameters:

Function-specific parameters

Returns
Return Value:

Function-specific return type

Primary Use Cases

Timestamping

Automatically timestamp data entries and log file entries

Time Calculations

Calculate elapsed time, time differences, and duration from stored timestamps

Performance Monitoring

Track calculation times and performance metrics

Real-time Dashboards

Create dashboards that show current time and auto-updating timestamps

Theory Summary

Precise

Exact matching required

Position-Based

Returns numeric position

Error-Safe

Handles missing text gracefully

Syntax & Parameters

=NOW()
Returns
Return Value:

The current date and time as a serial number (decimal: integer part = date, decimal part = time)

Description: Returns the current date and time

Interactive Examples

Basic NOW Function

Get current date and time

"No input required"
=NOW()
Current date and time (e.g., 45310.625 for Jan 15, 2024 3:00 PM)

Returns the current date and time as a serial number. The integer part is the date, and the decimal part is the time.

VBA Implementation & Automation

Basic NOW in VBA

Using NOW function in VBA

Sub NOWExample()
    Dim currentTime As Date
    
    currentTime = Now
    
    Range("A1").Value = currentTime
    MsgBox "Current time: " & Format(currentTime, "mm/dd/yyyy hh:mm:ss")
End Sub

' Insert current timestamp
Sub InsertTimestamp()
    Range("A1").Value = Now
    Range("A1").NumberFormat = "mm/dd/yyyy hh:mm:ss"
End Sub

' Calculate time difference
Sub CalculateTimeDifference()
    Dim startTime As Date, endTime As Date
    Dim diff As Double
    
    startTime = Range("A1").Value
    endTime = Now
    diff = endTime - startTime
    
    Range("B1").Value = diff & " days"
    Range("B2").Value = Format(diff, "hh:mm:ss")
End Sub

' Log timestamp to multiple cells
Sub LogTimestamps()
    Dim i As Integer
    For i = 1 To 10
        Range("A" & i).Value = Now
        Application.Wait (Now + TimeValue("0:00:01"))
    Next i
End Sub

Business Applications

Timestamping

Automatically timestamp data entries

=NOW()

Time Calculations

Calculate elapsed time from stored timestamp

=NOW()-A1

Performance Monitoring

Track calculation and processing times

=NOW()-A1

Real-time Display

Show current time in formatted display

=TEXT(NOW(), "hh:mm:ss")

Common Issues & Solutions

Function Not Updating

NOW() doesn't update automatically

=NOW()

Solution: Ensure automatic calculation is enabled: File → Options → Formulas → Calculation options → Automatic. Manual calculation mode requires F9 to update NOW().

Incorrect Time Zone

NOW() shows wrong time

=NOW()

Solution: NOW() uses your system clock's time zone. Check Windows Date & Time settings. For UTC time, you may need to adjust manually or use time zone conversion formulas.

Serial Number Display

NOW() shows a number instead of date/time

=NOW()

Solution: Format the cell as Date/Time: Right-click cell → Format Cells → Date or Time category. The serial number is correct; formatting is needed for display.

Performance Issues

Worksheet is slow due to many NOW() functions

=NOW()

Solution: NOW() recalculates on every worksheet change, which can slow large workbooks. Consider using static timestamps (manual entry or VBA) for historical data, or limit NOW() to essential cells only.

Performance Tips & Best Practices

⚡ Performance Optimization

  • NOW() recalculates on every worksheet change - use sparingly
  • Consider TODAY() if you only need the date without time
  • For static timestamps, use manual entry or VBA instead of NOW()
  • Limit NOW() to essential cells to improve workbook performance

🎯 Best Practices

  • Use NOW() for dynamic, real-time timestamps
  • Combine NOW() with TEXT() for formatted date/time displays
  • Use NOW()-timestamp for elapsed time calculations
  • Be aware that NOW() updates on recalculation - not suitable for historical timestamps
  • Document NOW() usage so team understands auto-update behavior