This tutorial demonstrates various ways of entering dates in Excel. See how to insert today's date and current time as static time stamp or dynamic values, how to auto populate a column or row with weekdays, and how to auto fill random dates in Excel.
There are several ways to add dates in Excel depending on what exactly you want to do. For example, do you want to enter a today's date in some report or invoice? Or, perhaps you want to insert a date in Excel that will update automatically and always display the current date and time? Or, maybe you want to auto fill weekdays or input random dates in your worksheet?
In a moment, you will learn all these and a few more date entering techniques. If you are curious to know how Excel stores dates and times, please check out part 1 of this tutorial - Excel date format.
How to enter a date in Excel
You can type a date in an Excel cell in a variety of ways, for example 1/1/2015, or 1-Jan-2015, or 1-Jan, or January 1, 2015. When you type something like that in a cell, Microsoft Excel knows you are entering a date and automatically applies the date format to that cell. Quite often, Excel formats the newly inserted date according to your Windows default date settings, but sometimes it may leave it exactly as you typed.
The most obvious visual indication that Excel has recognized the date you've entered is its right-alignment in a cell as opposed to left-aligned text values.
If Excel has failed to recognize your input as a date and you see it left-justified in a cell, try inserting a date in some other format close to your default short or long date formats. These formats are marked with an asterisk (*) in the Format Cell dialog window and you can quickly access them on the Excel ribbon (Home tab > Number group):
You will be able to easily change the date format later via the Format Cells dialog that opens on the Ctrl + 1 shortcut. For more details, please see How to change the date format in Excel.
Note. If a date you've entered displays as a number of pound signs (#####) in a cell, most likely the cell is not wide enough to fit the entire date. To fix this, double-click the right border of the column to auto fit the date, or drag the right border to set the desired column width. If this does not help, please check other Excel date format troubleshooting tips.
Tip. The fact that Excel automatically recognizes the entered value as a date may not always be what you actually want. We have some tips on how to avoid automatic data formatting.
Inserting today's date and current time in Excel
In Microsoft Excel, you can input the current date and time either as a static or dynamic value.
Shortcuts to enter today date in Excel (as a timestamp)
To begin with, let's define what timestamp is. Timestamping is entering a "static date" that won't change with the course of time or when the spreadsheet is recalculated.
So, if your goal is to enter the current date and/or time as a static value that won't automatically update the next day, you can use one of the following shortcuts:
- Ctrl + ; shortcut inserts the today date in a cell.
- Ctrl + Shift + ; shortcut inserts the current time.
- To enter the current date and time, press Ctrl + ; then press the Space key, and then Ctrl + Shift + ;.
Insert an automatically updatable today's date and current time
If you want to input today's date in Excel that will always remain up to date, use one of the following Excel date functions:
=TODAY()
- inserts the today date in a cell.
=NOW()
- inserts the today date and current time in a cell.
Unlike Excel date shortcuts, the TODAY and NOW functions will always return today's date and current time.
When using the Excel date functions, please keep in mind that:
- The returned date and time are not refreshed continuously, they are updated only when the spreadsheet is re-opened or re-calculated, or when a macro containing the function is run.
- The functions take the current date and time from your computer's system clock.
How to insert today date & current time as unchangeable time stamp
This section addresses a handful of comments that have been posted on this page with one and the same question: "What formula do I use to enter a timestamp in my Excel sheet without it changing every time the worksheet is reopened or recalculated?"
For starters, I'd like to note that I'm very hesitant to post this solution because it involves circular references, and they should be treated with great care. Anyway, here goes the formula…
Let's say you have a list of items in column A, and as soon as a certain item is shipped, you enter "Yes" in the Delivery column, which is column B. Once "Yes" is in there, you want to have the current date and time automatically inserted in the same row in column C as a static unchangeable time stamp.
To do this, we are going to use the following nested IF formula with circular references in the second IF function:
=IF(B2="yes", IF(C2="" ,NOW(), C2), "")
Where B is the Delivery column, and C2 is the cell where you input the formula and where the time stamp will eventually appear.
In the above formula, the first IF function checks cell B2 for the word "Yes" (or any other text you supply to the formula), and if the specified text is there, it runs the second IF function, otherwise returns an empty string. And the second IF is a circular formula that makes the NOW function return the current day and time if C2 doesn't have a value in it already, thus saving all existing time stamps.
If instead of checking for any specific word, you want the timestamp to appear when you put anything in the specified cell (that could be any number, text or date), then have the first IF function to check for a non-empty cell, like this:
=IF(B2<>"", IF(C2="" ,NOW(), C2), "")
Note. For this Excel circular formula to work, you should allow iterative calculations in your worksheet. Also, please keep in mind that there are many reasons not to use circular references in Excel, and if you decide to apply this solution in your worksheets, it's on your own risk.
How to auto populate dates in Excel
If you need to insert dates in a range of cells, you can let Excel "auto date" a column or row by using the AutoFill feature as demonstrated below or make a date sequence with formulas as explained in the above-linked tutorial.
Auto fill a date series that increases by one day
To automatically fill a column or row with an incrementing date series that increases by one day, you use Excel's AutoFill feature in the usual way:
- Enter your initial date in the first cell.
- Click on the cell with the first date to select it, and then drag the fill handle across or down the cells where you want Excel to add dates. (The fill handle is a small green square that appears at the bottom-right corner when you select a cell or a range of cells in Excel, as shown in the screenshot below.)
Auto fill weekdays, months or years
There are two ways to automatically populate the selected range of cells with weekdays, months or years.
- You can use the Excel AutoFill options as described above. When the range is populated with sequential dates, click the AutoFill Options icon and select the option you want:
- Another way is to enter your first date, right-click the fill handle and drag the fill handle through the cells you want to auto fill with dates, and then release it. When you do, Excel displays a context menu and you select the appropriate option from it.
Auto insert every 2nd, 3rd or Nth day
If you've tried a second solution described above, you probably noticed the Series option near the bottom, which provides a few more auto date features. One of them is inserting every 2nd, 3rd, 4th, etc. day, month or year in a worksheet. Let's try this now:
- Add the first date in some cell.
- Select that cell, right-click on the fill handle, drag it down or across several cells, and then release.
- In the context menu, click Series.
- In the Series dialog box, choose the appropriate Date unit and enter the Step value.
- Click OK.
How to inset random dates in Excel
Regrettably, Microsoft Excel does not provide an option to enter random dates automatically. Luckily, AbleBits Random Generator for Excel does :)
You simply select a range of cells where you want to autofill dates in a random order, and switch to the Random Generator's pane where you specify:
- Start and End date;
- What days to add - weekdays, weekends or both;
- To add only unique dates, check the Unique values
Then you click the Generate button, and have the selected range populated with random dates.
Apart from dates, the Random Generator add-in can auto fill your worksheets with numbers, Boolean vales and custom lists. If you think this is something that would be useful in your work, you can get it as part of our Ultimate Suite for Excel that includes 70+ time-saving tools and over 300 useful features.
Insert a date in Excel via a drop-down calendar (Date Picker)
If you are setting up a spreadsheet for other users, and want to make sure they enter dates right, it may be a good idea to insert a drop-down calendar in a worksheet. Your users will be able to fill in dates in a mouse click and you will be 100% confident that all dates are entered in an appropriate format.
If you are using a 32-bit version of Excel, you can use Microsoft's Date Picker control. For the detailed instructions, please see How to insert calendar in Excel (Date Picker control).
If you are using a 64-bit version of Excel 2016, Excel 2013, Microsoft's Date Picker control won't do. In this case, consider using one of the third-party calendars, for example our own one :)
For more options, please see third-party drop-down calendars for Excel.
This is how you insert date in Excel. I am hopeful these date entering techniques, shortcuts, functions and Excel auto date features have proved useful to you. Anyway, thank you for reading!
442 comments
Hi, I thought it was worth mentioning here and hopefully and workaround can be found.
I used your formula to auto date stamp a cell when data is entered in another …… =IF(B21"",IF(A21="",NOW(),A21),"")
And a slightly different version…. =IF(B1"",IF(A1"",A1,NOW()),"")
This is the scenario where the problem is occurring.
I input data on the sheet using excel on my phone, date stamps are all correct and the excel file saved on my one drive account. Few days later I will open the same excel file on my iPad. When excel updates the cells with the most recent information (the info stored previously from the phone) It populates the cells but the formula sees that as the date it was inputted… not the original date stamp that was created at the time of inputting the original dat on my phone.
Wonder if there is any work around or fix for this that doesn’t require macros as they are not compatible on mobile devices.
Cheers
Matt
Hello Matt!
If I understand your task correctly, to prevent your date from automatically changing, you can use several methods:
1. Use Shortcuts to insert the current date and time
2. Use the recommendations How to insert today date & current time as unchangeable time stamp in our blog.
3. Replace the date and time returned by the TODAY function with their values. Copy the date (CTRL + C), then paste only the values using Paste Special or Shortcut CTRL + ALT + V.
4. Use VBA to write the current time to the cell.
Thanks for your quick reply. :-)
Your example works brilliant on an Excel sheet stored locally.. but not files stored on a cloud. This is to do with how data is updated between devices.
I have originally followed the example in the above blog (https://www.ablebits.com/office-addins-blog/insert-dates-excel/#insert-timestamp)
However this doesn’t work all the time when it comes to saving the file to the cloud (one drive) and loading / editing it from different devices.
The reason for this is as follows:
Example:
Data added to cell B1 via excel on iPhone. Date stamp eg 1/2/24 added to cell A1. Excel sheet now saved back to cloud (one drive).
2 days later open the same file on a different ios device….
It opens the file, sees that data has been inserted into B1 but sees the same formula in A1 as before, excel then proceeds automatically populates cell B1 with that new data from the version stored in the cloud. So from that sheets perspective it’s the first time data is been entered into cell B1 and therefor it adds the date stamp from when it’s got the data. In this examples case 3/2/24
Keyboard shortcuts or VBA won’t work on iOS
If I only open and edit the sheet on one iOS device it would all work flawlessly but crossing devices using cloud storage causes problems. Real shame as it was so handy having the auto date stamp function.
I want whole date in words like fourteen February two thousand eight. how can I get this in excel?
Hi! This is not possible with the standard Excel options. This can be done using a VBA macro or a custom user-defined function.
for b3 provide formula, if anything is typed in c3, display the date of that day and make it static
Hello! If I understand your task correctly, read the following paragraph in the article above very carefully: How to insert today date & current time as unchangeable time stamp.
The second option is to use VBA to write the current date and time to the cell.
Hello,
I was wondering how to autofill a list of dates based of previous excel columns. Basically, I had my month, date and year all as separate columns on excel and I want to combine all those columns into one on excel with the full date. All the dates the randomized as they are birthdates. If there is a faster way to do this rather than fix it manually please let me know!!
Hello,
I am using the circular reference method to insert a "Date Entered" timestamp for each row of an inventory sheet to highlight the time the material in that row was entered into the sheet. I also was hoping to create another column with a timestamp that updates automatically, "Date Modified" if something on that row was changed after being entered, but I am having a hard time with it. I tried something similar to this =IF(A7:D7="","",NOW()) and it sort of works, but when any cell within the spreadsheet is changed, it updates that entire column rather than just the corresponding value in that row. Is this something that is doable? I know you can do it in VBA but this is for a spreadsheet that most people will use with the web version of Excel and we don't have access to macros that way.
Hi! To fix the date of the change, you must specify the current value that was changed in the formula, not "". Or use VBA.
Hi Svetlana,
For some reason this formula is not working for me. I am getting a 0 value instead of date. Can you please help what could be the issue?
=IF(B2="yes", IF(C2="" ,NOW(), C2), "")
Hi! Follow all the recommendations that are given to this formula. For example, allow iterative calculations, and others.
Hi! How do I get the very next cell to generate a date that is 5 business days (or 7 days) out from the date in the previous cell? For example, if I put a date of 11/10/2023 in cell B2, is there a way to get cell C2 to automatically generate a date of 11/17/2023? Either by auto-populating as if there were a formula, or by dragging and auto-filling?
I need a way to easily track and populate due dates that are 5 business days out from the date that will be input in column B.
Thank you!!
Hi! To add or subtract working days from a date, use the WORKDAY function. Explanations and examples can be found in these instructions: Excel WORKDAY function - add or subtract workdays. Try this formula:
=WORKDAY(A1,5)
This is exactly what I needed. Thank you!!
I wont to enter the date if not entered return today function in excel ?
=SUMIFS(Consolidated[Amount Needed],Consolidated[Paint],[@Coat],Consolidated[Date],IF(P3="DATE",IF(P3="",NOW(),P3),""))
=SUMIFS(Consolidated[Amount Needed],Consolidated[Paint],[@Coat],Consolidated[Date],IF(ISBLANK(P3),"",TODAY()-P3))
Which of these statements is true?
Why does it always return this result? 00/01/1900
Hi! It is very difficult to understand a formula that contains unique references to your workbook worksheets. Hence, I cannot check its work. Your result means 0 in date format.
Thank yoe so much Svetlana, This was very helpful!
Hi There,
I am trying to create a formula to say IF D3=1st day of the month then E3 should be same date as D3 if any other day of the month then E3 should be 1st day of following month is this possilbe ?
I can get it to do E3 as following month or 3 months later but I can't figure out the if E3 =1st day to enter same as E3 1st day of the month?
I hope you can help
Tara
Hi! Determine the day using the DAY function. Use the EOMONTH function to get the first day of the next month. Here is an example formula:
=IF(DAY(D3)=1,D3,EOMONTH(D3,0)+1)