How to Calculate Rolling Dates with EDATE Function in Excel
Question details
The user needs to calculate future client reauthorization dates at specific month intervals (18, 24, 30, 36 months) based on an initial intake date.

- Product
- Excel
- Device & OS
- not provided
- Scenario
- Generating repeating or interval-based future dates from a source date cell for client management, scheduling, or compliance tracking.
- Observed behavior
- Requires a functional formula to automatically add a specific number of months to a base date and output the corresponding future date.
Ensure your starting intake dates are formatted correctly as valid Excel dates rather than text strings, otherwise date calculation formulas will result in errors.
Using the EDATE Function to Add Specific Months
The EDATE function is the most efficient and standard method for adding or subtracting a precise number of months from a starting date.
The EDATE function requires two arguments: the start date and the number of months to add. It automatically handles the varying number of days across different months and leap years.
Click on the empty cell where you want the future reauthorization date to appear.
Type `=EDATE(` to begin the formula.
Click the cell containing your starting intake date (e.g., I2). Locking the column with a dollar sign (like `$I2`) is helpful if you plan to drag the formula sideways across multiple interval columns.
Type a comma followed by the number of months you want to advance. For example, type `36` to calculate the date 3 years later, making your formula `=EDATE($I2, 36)`.
Press Enter. If the result displays as a 5-digit number (e.g., 45123), go to the Home tab, click the Number Format dropdown, and select 'Short Date'.

Using the DATE Function for Granular Control
While EDATE is best for exact monthly intervals, the DATE function breaks down the date into components, allowing you to add years, months, and days simultaneously.
Calculate Complex Dates Easily with WPS Spreadsheet
WPS Spreadsheet fully supports the EDATE function and hundreds of other advanced formulas, making it simple to manage schedules, track client intervals, and perform complex date calculations seamlessly.
- 1. Open your workbook: Launch WPS Spreadsheet and open the document containing your client intake dates.
- 2. Enter the EDATE formula: Click the target cell and type `=EDATE(start_date, months)`, replacing the placeholders with your actual cell references (e.g., I2) and month counts.
- 3. Calculate the result: Press Enter to compute the interval date immediately.
- 4. Fill down the column: Click the small square at the bottom right of the cell and drag it down to apply the calculation to all rows.
- 5. Adjust date formatting: If necessary, highlight the cells, right-click, select 'Format Cells', and choose your preferred Date style.

Frequently Asked Questions
Can I calculate past dates using the EDATE function?
Yes, you can calculate dates in the past by using a negative number for the second argument. For example, `=EDATE(A2, -6)` will return the date exactly six months prior to the date in cell A2.
How do I calculate intervals in years instead of months using EDATE?
Since EDATE specifically uses months, you need to multiply the number of years by 12. For instance, to add 5 years, use `=EDATE(A2, 5*12)` or simply `=EDATE(A2, 60)`.
Why does my EDATE formula return a #VALUE! error?
The #VALUE! error typically occurs if the starting date is not recognized as a valid Excel date (e.g., it is stored as plain text) or if the months argument contains non-numeric characters. Check your start date formatting and ensure the month argument is a pure number.
Does EDATE account for leap years automatically?
Yes, EDATE automatically adjusts for leap years and the varying number of days in different months. If you add one month to January 31st, it will intelligently return February 28th, or February 29th during a leap year.




