Note: The other languages of the website are Google-translated. Back to English
English English

How to update or insert (current) date and time by a Command Button in Excel?

Normally, many Excel users tend to insert timestamp with the formula =NOW(). With this formula, the inserted timestamp will be update automatically every time you open the workbook. For manually updating date and time in a worksheet at any time, how to achieve it? This article will show you method of updating current date and time by clicking a Command Button in Excel.

Update date and time by a Command Button with VBA code

Update date and time by a Command Button with VBA code

Please do as follows to update date and time by a Command Button in Excel.

1. Insert a Command Button by clicking Developer > Insert > Command Button (ActiveX Control). See screenshot:

2. Right click the inserted Command Button, then click View Code from the right-clicking menu.

3. In the popping up Microsoft Visual Basic for Applications window, please replace the original code with the below VBA code.

VBA code: Update date and time by a Command Button in Excel

Private Sub CommandButton1_Click()
    Range("A2").Value = Now()
End Sub

Note: In the code, CommandButton1 is the name of your inserted Command Button. And A2 is the cell which the update date and time will be displayed. Please change them as you need.

4. Turn off the Design Mode under the Developer tab. Click on the Command Button, then current date and time is inserted into cell A2.

And every time when you click on the Command Button, the date and time in cell A2 will be updated immediately.

Related articles:

The Best Office Productivity Tools

Kutools for Excel Solves Most of Your Problems, and Increases Your Productivity by 80%

  • Reuse: Quickly insert complex formulas, charts and anything that you have used before; Encrypt Cells with password; Create Mailing List and send emails...
  • Super Formula Bar (easily edit multiple lines of text and formula); Reading Layout (easily read and edit large numbers of cells); Paste to Filtered Range...
  • Merge Cells/Rows/Columns without losing Data; Split Cells Content; Combine Duplicate Rows/Columns... Prevent Duplicate Cells; Compare Ranges...
  • Select Duplicate or Unique Rows; Select Blank Rows (all cells are empty); Super Find and Fuzzy Find in Many Workbooks; Random Select...
  • Exact Copy Multiple Cells without changing formula reference; Auto Create References to Multiple Sheets; Insert Bullets, Check Boxes and more...
  • Extract Text, Add Text, Remove by Position, Remove Space; Create and Print Paging Subtotals; Convert Between Cells Content and Comments...
  • Super Filter (save and apply filter schemes to other sheets); Advanced Sort by month/week/day, frequency and more; Special Filter by bold, italic...
  • Combine Workbooks and WorkSheets; Merge Tables based on key columns; Split Data into Multiple Sheets; Batch Convert xls, xlsx and PDF...
  • More than 300 powerful features. Supports Office/Excel 2007-2019 and 365. Supports all languages. Easy deploying in your enterprise or organization. Full features 30-day free trial. 60-day money back guarantee.
kte tab 201905

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!
officetab bottom
Comments (7)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi there.. this is really good basic info..

One question - how do you modify the code to put the datestamp into the NEXT row below, each time the button is pressed? (keeping the data previously written above?)

Thank you so much!
This comment was minimized by the moderator on the site
The below VBA code will work on selected cell. When you want to insert timestampe to a cell, just select it and press the button.

Private Sub CommandButton1_Click()
Dim xRg As Range
On Error Resume Next
Set xRg = Selection
xRg.Value = Now()
End Sub
This comment was minimized by the moderator on the site
Awesome! Thanks for this tutorial.

However, how do i insert ONLY the date in DD/MM/YYYY format?
This comment was minimized by the moderator on the site
You can format the output cell as Short Date formatting to solve the problem.
This comment was minimized by the moderator on the site
I have a question. There is a workbook that we keep on a share drive for the whole team to access. I want to add this macro to it so anytime changes are made, we can simply pres the button and the time and date will auto populate at a click. Now here is the question, from this workbook, data is pulled to other workbooks if I save a new file as "Macro-Enabled" and delete the old "Non-Macro" workbook, will the data continue to pull from this new workbook or will I need to fix all the other workbooks.
This comment was minimized by the moderator on the site
Hi Michelle,
After saving the workbook as an Macro-Enabled Excel workbook, the code still works fine.
This comment was minimized by the moderator on the site
How do i update the code to put the time/date stamp in the cell NEXT to the button so it applies to each row thereon
There are no comments posted here yet
Leave your comments
Posting as Guest
Rate this post:
0   Characters
Suggested Locations