When Ted enters a date with just the month and day, i.e. 4/5, the date displays 5-Apr and the number format is Custom. However, when he enters 4/5/18 the date displays 4/5/2018 and the number format is Date. Ted wonders how he can get the date to format to 4/5/2018 when he enters only 4/5 without having to format the cells to Date before making his entry. In other words, he wants the date to default to Date and not Custom.
There is no way to do this within Excel. In this case, Excel, as part of its parsing process, chooses the date format that it believes you intended based upon how you entered the date. If you want to use a different date format, you must explicitly format the column (or cells) to use the date format you want before you enter the date, or you must format the column (or cells) explicitly after you enter the date.
There is one macro-based solution, but it may be a bit of overkill. All you need to do is to add this event handler to the code window for the worksheet. (Right-click on the worksheet tab and choose View Code from the resulting Context menu. Paste this short macro into the code window that then appears.)
Private Sub Worksheet_Change(ByVal Target As Range) If IsDate(Target) Then Target.NumberFormat = "m/d/yyyy" End If End Sub
The macro checks whatever you enter into a cell, and if it is determined to be a date (that's the purpose of the IsDate function), then the desired date format is applied to the cell.
I mentioned that this may be a bit of overkill because you will, obviously, need to save the workbook as a macro-enabled workbook. If this is no problem for your use of the workbook, however, then it may solve your date-formatting needs.
Note:
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (13553) applies to Microsoft Excel 2007, 2010, 2013, 2016, 2019, and Excel in Office 365.
Program Successfully in Excel! John Walkenbach's name is synonymous with excellence in deciphering complex technical topics. With this comprehensive guide, "Mr. Spreadsheet" shows how to maximize your Excel experience using professional spreadsheet application development tips from his own personal bookshelf. Check out Excel 2013 Power Programming with VBA today!
If you have a range of numeric values in your worksheet, you may want to change them from numbers to text values. Here's ...
Discover MoreNeed to replace the formats applied to some cells with a different format? You can use Excel's Find and Replace tool to ...
Discover MoreAdding borders around cells is a common formatting task. You can make the task more intuitive by actually drawing the ...
Discover MoreFREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
2018-07-23 13:01:28
Allen
Peter, that would be (to me) the easiest way, but as noted in the original question, Ted wanted a way to accomplish the task "without having to format the cells to Date before making his entry."
-Allen
2018-07-23 11:05:24
Peter Atherton
Just format the column as a long or short date before entering the day & month.
2018-07-22 03:18:52
Jacques Raubenheimer
One other thing that should be mentioned (and adds to the reason why this may be overkill) is that this macro will wipe out the undo stack.
Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2022 Sharon Parq Associates, Inc.
Comments