Using DATE function in Excel - formula examples to calculate dates

When it comes to calculating dates in Excel, DATE is the most essential function to understand. As you probably know, Excel does not keep the year, month and day for a date, nor does it explicitly store weekday information in a cell. Instead, Microsoft Excel stores dates as serial numbers and this is the main source of confusion.

Not all Excel date functions can recognize dates entered as text values, therefore it's not recommended to supply dates directly in calculations. Instead, you should use the DATE function to get a serial number representing the date, the number that Excel understands and can operate on.

Excel DATE function

The Excel DATE function returns the serial number that represents a certain date. It has the following arguments:

DATE(year, month, day)

Where:

Year - represents the year of the date.

Month - an integer representing the month of the year, from 1 (January) to 12 (December).

Day - an integer corresponding to the day of the month, from 1 to 31.

The DATE function is available in all versions of Excel 365 - Excel 2007.

DATE function - tips and notes

The DATE syntax looks crystal clear and straightforward on the surface. In practice, there may be some unobvious pitfalls that the below tips will help you avoid.

Year

Excel interprets the year argument according to the date system set up on your computer. By default, Microsoft Excel for Windows uses the 1900 system where January 1, 1900 is represented by the serial number 1. For more details, please see Excel date format.

  • If the year argument is between 1900 and 9999 inclusive, Excel uses exactly the value you supplied to create a date. For example, DATE(2015, 12, 31) returns December 31, 2015.
  • If the year argument is between 0 and 1899 inclusive, Excel adds the specified number to 1900. For example, DATE(100, 12, 31) returns December 31, 2000 (1900 + 100).
  • If the year argument is less than 0 or greater than 9999, a DATE formula will return the #NUM! error.

Tip. To avoid confusion, always supply four-digit years. For example, if you input "01" or "1" in the year argument, your DATE formula will return the year of 1901.

Month

  • If the month argument is greater than 12, Excel adds that number to the first month in the specified year. For example, DATE(2015, 15, 5) returns the serial number representing March 1, 2016 (January 5, 2015 plus 15 months).
  • If the month argument is less than 1 (zero or negative value), Excel subtracts the magnitude of that number of months, plus 1, from the first month in the specified year. For example, DATE(2015, -5, 1) returns the serial number representing July 1, 2014 (January 1, 2015 minus 6 months).

Day

As well as month, the day argument can be supplied as a positive and negative number, and Excel calculates its value based on the same principles as described above.

Tip. At first sight, supplying negative values in the month or day argument of the Excel DATE function may seem absurd, but in practice it may turn out quite useful, for example in the complex formula that converts a week number to a date.

Excel DATE formula examples

Below you will find a few examples of using DATE formulas in Excel beginning with the simplest ones.

Example 1. DATE formula to return a serial number for a date

This is the most obvious use of the DATE function in Excel.

For example, to return a serial number corresponding to 20-May-2015, use this formula:

=DATE(2015, 5, 20)

Instead of specifying the values representing the year, month and day directly in a formula, you can have some or all arguments driven by of other Excel date functions. For instance, combine the YEAR and TODAY to get a serial number for the first day of the current year.

=DATE(YEAR(TODAY()), 1, 1)

And this formula outputs a serial number for the first day of the current month in the current year:

=DATE(YEAR(TODAY()), MONTH(TODAY(), 1)
Using the DATE function in Excel to get a serial number representing a date

Tip. To display a date rather than a serial number, apply the desired Date format to the formula cell.

Example 2. How to return a date based on values in other cells

The DATE function is very helpful for calculating dates where the year, month, and day values are stored in other cells.

For example, to find the serial number for the date, taking the values in cells A2, A3 and A4 as the year, month and day arguments, respectively, the formula is:

=DATE(A2, A3, A4)
Excel DATE formula to return a date based on values in other cells

Example 3. DATE formula to convert a string or number to a date

Another scenario when the Excel DATE function proves useful is when the dates are stored in the format that Microsoft Excel does not recognize, for instance DDMMYYYY. In this case, you can use DATE in liaison with other functions to convert a date stored as a numeric string or number into a date:

=DATE(RIGHT(A2,4), MID(A2,3,2), LEFT(A2,2))
DATE formula to convert a string to a date

Example 4. Adding and subtracting dates in Excel

As already mentioned, Microsoft Excel stores dates as serial numbers and operates on those numbers in formulas and calculations. That is why when you want to add or subtract some days to/from a given date, you need to convert that date to a serial number first by using the Excel DATE function. For example:

  • Adding days to a date:=DATE(2015, 5, 20) + 15The formula adds 15 days to May 20, 2015 and returns June 4, 2015.
  • Subtracting days from a date:=DATE(2015, 5, 20) - 15The result of the above formula is May 5, 2015, which is May 20, 2015 minus 15 days.
  • To subtract a date from today's date:=TODAY()-DATE(2015,5,20)The formula calculates how many days are between the current date and some other date that you specify.

DATE formulas to add and subtract dates in Excel

If you are adding or subtracting two dates that are stored in some cells, then the formula is as simple as =A1+B1 or A1-B1, respectively.

For more information, please see:

Advanced Excel DATE formulas

And here are a few more examples where Excel DATE is used in combination with other functions in more complex formulas:

Using Excel DATE formulas in conditional formatting

In case you want not only to calculate but also highlight dates in your Excel worksheets, then create conditional formatting rules based on DATE formulas.

Supposing you have a list of dates in column A and you want to shade dates that occurred earlier than 1-May-2015 in orange and those that occur after 31-May-2015 in green.

The DATE formulas you want are as follows:

Orange: =$A2<DATE(2015, 5, 1) - highlights dates less than 1-May-2015

Green: =$A2>DATE(2015, 5, 31) - highlights dates greater than 31-May-2015
Using Excel DATE formulas in conditional formatting

For the detailed steps and more formula examples, please see How to conditionally format dates in Excel.

How to make date formulas in Excel with Date & Time Wizard

Though DATE is the main function to work with dates in Excel, a handful of other functions are available to tackle more specific tasks. You can find the links to in-depth tutorials at the end of this article.

Meanwhile, I'd like to present you our Date & Time Wizard - a quick and easy way to calculate dates in Excel. The beauty of this tool is that outputs the results as formulas, not values. Thus you have a kind of 'two birds, one stone' opportunity - get the result faster and learn Excel date functions along the way :)

The wizard can perform the following calculations:

  • Add years, months, weeks, days, hours, minutes and seconds to the specified date.
  • Subtract years, months, weeks, days, hours, minutes and seconds from the specified date.
  • Calculate the difference between two dates.
  • Get age from the birthdate.

For example, here's how you can add 4 different units in cells B3:E3 to the date in A4. The formula in B4 is built in real-time as you change the conditions:
Subtract dates in Excel using the Date & Time Wizard

If you are curious to explore other capabilities of the wizard, feel free to download an evaluation version of the Ultimate Suite below which includes this as well as 60 more time saving add-ins for Excel.

I thank you for reading and hope to see you on our blog next week!

Available downloads

Ultimate Suite 14-day fully-functional version (.exe file)

680 comments

  1. Hi,

    I used the Excel DATE function to calculate dates for example (=DATE(YEAR(D4)+1,MONTH(D4),DAY(D4)) so when I enter say 1/1/2022 the next cell will automatically say 1/1/2023

    Can I auto fill the formula to a blank cell? When I auto fill it to a blank cell a date (1/1/1900) appears. I want the cell to remain a blank cell but still have the formula in it so when someone enters a date the next dates will automatically appear. So if I enter say 1/1/22 into one cell 1/1/23 will appear next to it and so on.

    Is this possible or will I have to put up with 1/1/1900 until I enter a date into the cell?

  2. Sir I have little complex requirement

    In my below statement of account I need to pull the closing balance of any particular date how it will be possible, please help

    below is my example

    Date Description Debit Credit Balance
    05/11/2022 Opening balance 6,200.00 6,200.00
    05/11/2022 Paid to Raju 230.00 5,970.00
    05/11/2022 Received from Vijay 550.00 6,520.00
    06/11/2022 Cash Collection 8,345.00 14,865.00
    06/11/2022 Food Expenses 258.00 14,607.00
    06/11/2022 Travelling Expenses 879.00 13,728.00
    06/11/2022 Paid to Stanly 980.00 12,748.00
    07/11/2022 Trafic Fine 85.00 12,663.00
    07/11/2022 Cash Collection 3,330.00 15,993.00

    In cell my date is 6/11/2022 and in cell i need the result of closing balance of 6/11/2022, that is 12,748.00

    How I can pull the closing balance from statement of account of any particular date

    Please help me.

    With regards,

    Sunil Pinto.

  3. Hello, I am trying to extract just the date from this format: 2022-01-01 13:23:59 +0000

    I have tried to classic formulas but they don't seem to be recognising it. I have over 2,000 rows of data and so I need a quick fix to extract date only please?

    Thank you!

  4. .. lll
    How I can get a different information of
    different employees in different date in one
    cell?

  5. I need a condition like previous month of 9th to current date is this possible in excel and every time previous month will be changed like this is october then the previous moth is september if the month is december then need to extract data from november 9th to current date

  6. When using the formula =datedif(A4,B4"m") the formula shorts me 1 month, example if I entered 01/01/2023-12/31/2023 the formula says that is 11 months not 12, how do I correct this?

    • Hi!
      It has been said many times here that 12/31/2023 means 12/31/2023 00:00:00. Therefore, the date 12/31/2023 is not included in your time slot.

  7. Hi,
    I need to set up formula, that shows if "start date" less than 3 days from TODAY and show me urgent alert.
    thank you,
    S

  8. how can i sum a column with a date range like for month of September and for one particular name(like how much bob spent in month of September 1 to 30th)

  9. Sir i need one help, exm: I have one date (20-Sep-2022) in A2 column, in A3 column i write down number 66 (days), i need date result after 66 days on A4 column. can you please help me this unction.

    A2 A3 A4
    20-Sep-2022 66 (show date after 66 days)

    Thanks and regards
    bdmauz

  10. Column J contains the date received. Column V (Review Date) has a drop down selection of "4 Months", "6 Months", "12 Months", "Indefinite". Basically I need a formula that will show the date to be reviewed in Column V depending on the selected drop down option. For "Indefinite" I want the cell to populate as 'Indefinte".

    Thanks in advance.

      • Sorry, to be more clear. Say I received a notice on the 30/06/2022 and wished to review the notice in 4 months time. I would put 30/06/2022 in Column J (review date) and select "4 months" from the drop down in Column V (review date). My problem is that I need Column V to show the actual date to be reviewed after I select the option from the drop down, for example in this case it would be 30/10/2022 after selecting "4 Months". Is there a way to do this?

  11. Hello!

    I have a formula in column M (=$G3-35) to populate a due date. What formatting rule would I use to make the dates in column M turn red when the due date is at 35 days or less?

    Thank you!

  12. (Start Date) 12-01-2022) (End Date 02-02-2022)=IF(AND(MONTH(G6)>=MONTH(A7),MONTH(G6)<=MONTH(B7)),
    IF(MONTH(G6)=MONTH(A7),DAY(EOMONTH(A7,0))-DAY(A7)+1,
    IF(MONTH(G6)=MONTH(B7),DAY(DAY(B7)),DAY(EOMONTH(G6,0)))),0)

    Dear sir,.
    like this i entered the formula in excel it works for calculating between two month day as per month but if the month of start and end date in the same month its not calculating kindly help please
    It is for planing enginering to entered work down as per start and end date as per days of month
    kindly request to help i am stuck in this please.........

      • Dear sir,
        i Want to distrubute any quantity as per month days compare to start and end date if that start and end date is in between more than one month to be calculate how much days in each month

  13. Hello. I am using Microsoft Office Pro Plus 2016. I am creating a worksheet that contains NAMES in Col. A and BIRTHDATES in Col. B. I have formatted the BIRTHDATE column as Custom m/d. Everything works well until I attempt to insert 2/29 in the cell. It quickly replaces the input with 2/1. I can insert 2/28 and it will accept this input. How can I make it accept the 2/29 date input?

  14. I have a sheet (handicaps) that contains names, golf handicap (numerical). This sheet changes each week of our season. I have another sheet (competition) that when the name is placed in a cell it looks at (handicaps) for the correct number for that week. My problem is we have 20 weeks, each week we have a competitive match. Once the number is inserted each week I have to manually copy and paste the true value. Each week a persons handicap can change and if I do not put in the true value after my formula retrieves the number it is possible 2 or 3 weeks down the road the handicap in week one could change because the formula is still active if I do not copy and paste values. This would change results from past weeks.
    So, I am looking at calculating my weekly columns by date, some how. Something like calculate formula only between May 4, 2022 to May 6, 2022 only. Then in the second week go from May11, 2022 to May 13, 2022 only. That way I could imbed all my formulas and only calculate in the time frame that I want.
    This way I would not have to copy and past values each week and my handicaps can fluctuate with no concern that it will change any past or future calculations.
    Thanks

  15. Hello!

    I have what seems like a simple google sheet/excel date function that I can't quite figure out.

    I have a drop down menu with a "yes" option in column A. In column B, for each row, I want it to display todays date on the day the "yes" was selected in column A. is this possible?

  16. how to convert Aug / 19/2018 13: 39: 09
    to 20/08/2018 10:14 format ? anyone can help me

  17. I need to highlight the date in 1 column that is 14 days greater than the date in another column. What is the best method for doing that?

    Example: Col D date is 24-Mar-22; and Col E date is 17-Apr-22. I need to determine and highlight Col E if it is 14 days past the date in Col D.

    Thanks!

  18. How do I count the number of years worked since a specific date while accounting for a start date after the specific date?

    Kind of like "Years worked since "A Date" if start date is "B Date"

  19. hi I want to count how many cells are in column B past due

  20. Please someone help with my problem. i want to design a column that if its paid, the whole row will be green. if partially paid, yellow. is it doable? thank you in advance

Post a comment



Thank you for your comment!
When posting a question, please be very clear and concise. This will help us provide a quick and relevant solution to
your query. We cannot guarantee that we will answer every question, but we'll do our best :)