logo
search
Calculation Issues

How to Automatically Update Anniversary Dates and Leave Totals in Excel

Huda QurayshiHuda Qurayshi Sep 27, 2026 869 views

Question details

The user wants to use Excel formulas to automatically update an employee's anniversary date each year and calculate the total annual leave taken within the current entitlement period.

How to Automatically Update Anniversary Dates and Leave Totals in Excel
Product
Excel
Device & OS
not provided
Scenario
Tracking employee annual leave balances and anniversary dates in a spreadsheet.
Observed behavior
Needs a dynamic formula that updates the anniversary year automatically and sums up the leave taken based on this dynamic start date.
Before you start

Ensure you have a structured dataset with dedicated columns for the employee's original start date, the dates when leave was taken, and the amount of leave taken.

Solution 1Recommended

Use DATE, TODAY, and SUMIFS Functions

Create a dynamic anniversary date that updates annually, then use it as a criteria in a SUMIFS formula to calculate leave taken in the current entitlement year.

By combining the DATE and TODAY functions, you can force Excel to recognize the current year while keeping the employee's original hiring month and day. This newly calculated date acts as the starting threshold for summing up leave days.

1
Calculate the Current Year's Anniversary Date

Click on the cell where you want the dynamic anniversary date to appear. Assuming the original hire date is in cell B2, enter the formula: =DATE(YEAR(TODAY()), MONTH(B2), DAY(B2)). This returns the anniversary date for the current calendar year.

2
Adjust for Year Boundaries

To ensure accuracy before the anniversary occurs this year, use an IF statement to check if the anniversary has passed. Enter: =IF(DATE(YEAR(TODAY()), MONTH(B2), DAY(B2)) > TODAY(), DATE(YEAR(TODAY())-1, MONTH(B2), DAY(B2)), DATE(YEAR(TODAY()), MONTH(B2), DAY(B2))).

3
Calculate Total Leave Taken

Click on the total leave cell. Use the SUMIFS function to add up leave amounts (e.g., in column D) where the leave date (in column C) is greater than or equal to the dynamic anniversary date (e.g., in cell E2). Enter: =SUMIFS(D:D, C:C, ">="&E2, C:C, "<="&TODAY()).

Use DATE, TODAY, and SUMIFS Functions
Dynamic Updates: Because the TODAY() function is volatile, these dates and totals will automatically update whenever you open or recalculate the workbook on a new day.
Effortless HR Management

Easily Calculate Leave and Anniversary Dates in WPS Spreadsheet

WPS Spreadsheet fully supports advanced date functions like DATE, TODAY, and SUMIFS, making it incredibly simple to track employee leave automatically without complex setups.

  1. 1. Open WPS Spreadsheet: Launch WPS Office and open your employee leave tracking file.
  2. 2. Enter the Dynamic Anniversary Formula: Select the target cell and type =DATE(YEAR(TODAY()), MONTH(B2), DAY(B2)) to generate the current year's anniversary.
  3. 3. Apply the SUMIFS Function: In your total leave column, use =SUMIFS(Leave_Amount_Range, Leave_Date_Range, ">=" & Anniversary_Cell) to automatically calculate the consumed leave.
Fully compatible with Microsoft Excel formulas and functionsBuilt-in templates for HR tracking and leave managementLightweight, fast, and runs smoothly on all devices
microsoft office alternative - wps office

Frequently Asked Questions

Why does my DATE formula return a 5-digit number like 45000?

Spreadsheet programs store dates as sequential serial numbers for calculation purposes. To fix this, select the cell containing the 5-digit number, right-click, choose 'Format Cells', and select a standard 'Date' format.

What is the difference between SUMIFS and COUNTIFS for leave tracking?

SUMIFS is used when you need to add up the total values in a column, such as the number of hours or days taken. COUNTIFS is used if you just want to count the number of separate leave instances or requests submitted, regardless of their duration.

Can I also calculate the total years of service automatically?

Yes, you can use the DATEDIF function. Entering =DATEDIF(Start_Date_Cell, TODAY(), "Y") will calculate the exact number of full years an employee has been with the company.