The EDATE function

Returns the same day a number of months before or after a date. In a shorter month it stops at the last day, so one month after Jan 31, 2024 is Feb 29.

Syntax

EDATE(start_date, months)
start_date
The date to start from.
months
Months to move. A negative number goes back.

Examples

B1=TEXT(EDATE(DATE(2024,1,31),1),"mmm d, yyyy")
AB
1Feb 29, 2024
B1=TEXT(EDATE(DATE(2024,3,15),-3),"mmm d, yyyy")
AB
1Dec 15, 2023
B1=YEAR(EDATE(DATE(2024,3,15),24))
AB
12026

Practice EDATE

Questions

How do I add months to a date in Excel?

Use =EDATE(A2,3) for three months later. Adding 30 or 90 days drifts, because months have different lengths; EDATE keeps the day of the month.

What is the difference between EDATE and EOMONTH?

EDATE keeps the day of the month, so Mar 15 becomes Apr 15. EOMONTH always returns the last day of the month, Apr 30.

Related functions