If you work a rotation that involves multiple shifts and follows a specific pattern, you can use this spreadsheet to create your yearly work schedule. It allows you to include up to 3 shifts in your rotation pattern (day/evening/night, day/night, 1/2/3, A/B/C, etc.)


Shift Work Calendar

for Excel and Google Sheets
Shift Work Calendar


⤓ Excel (.xlsx)
For: Excel 2010 or later
⤓ Google Sheets

License: Private Use (not for distribution or resale)

"No installation, no macros - just a simple spreadsheet" - by


This template allows shift workers to create a yearly work calendar by defining a rotation pattern and a start date. The work days are highlighted automatically in the yearly calendar using a technique known as Conditional Formatting.

This spreadsheet was designed based on the Rotation Schedule template, which does basically the same thing except shown in a different type of calendar layout.

Defining a Shift Rotation Pattern

The shift rotation is defined as a pattern of letters or numbers consisting of "x" for days off and either a number or letter to indicate which shift you are working. The letter or number for each shift is defined in the legend above the calendar. You can change the legend to match what you want to use in your pattern.

This spreadsheet was designed to display the work calendar for a single employee or team. However, you can duplicate the worksheet to set up calendars for different employees or teams.

For example, the pattern "DDDDxxNNNNxxxx" would mean working 4 days in a row on the day shift (D), followed by 2 days off, followed by 4 days in a row on the night shift (N), followed by 4 days off.

In addition to the pattern, you need to enter the date that the pattern starts.

Holidays and Non-Working Days

If you want the rotation pattern to skip holidays and weekends (the spreadsheet refers to these as "non-working days") then you can select the option that works for you from a drop down at the top of the worksheet. By default, the "Non-Working Days" option is set to "none."

You can edit the list of holidays via the Holidays worksheet. If you select any option from the drop-down list other than "none" the holidays will be included as non-working days. If you don't want to include holidays, you can delete the holidays from the list in the Holidays worksheet (see the instructions in that worksheet).