I was recently asked to assist a co-worker with an issue he was having with Microsoft Project. He was working on a rather large implementation plan, and needed to assign the first 2/3rds of the tasks using the typical 8-hour day/40-hour week calendar, but the last third (and of course the most critical) were to be done across three 24-hour days. While this seemed like a common enough scenario, especially for large application upgrades and installs, MSProject was balking at allowing us to set this up. It was another case of "I know what I want to do, but I don't know how".

After much searching of the help files, google-ing and otherwise gnashing of teeth, we found the answer. The key concepts are:

  • Tasks have work hours (a calendar) assigned
  • Resources have work hours (a calendar) assigned
  • The default value for both the task and resource is the Standard Calendar, or an 8-hour work day
  • Both Tasks and Resources must be assigned correctly to allow for the desired schedules to be created.

The 24-hour calendar must be defined, if it is not already, using the Tools->Change Working Time menu option, then verifying that the 24-hour calendar exists in the "For Calendar" drop down list. If the project requires work hours not already defined, then a new one can be created by clicking the "Create New Calendar" button.

The resource must also be set up to allow 24-hour work. This is done by the View->Resource Sheet menu option, Right-mouse on the desired resource and select Resource Information. Click the "Change Working Time" button and select the appropriate Base Calendar from the drop down at the top. Alternately, this can be done on the same popup as the previous paragraph, just select the desired Resource from the "For Calendar" drop-down at the top. This now allows the resource to work 24-hour days.

Lastly, the task must be set to use the extended calendar. Click on the desired task, right mouse and select "Task Information". In the Calendar drop down, select the appropriate calendar. Assuming that the assigned resource's working time allows, the task will now utilize the extended calendar.

Note that for a given task and resource, the schedule will reflect the shorter of the calendars assigned to the pair.

Using the methods above will allow for a great deal of schedule flexibility, including defining shifts to done on specific rotating shifts, or any number of combinations.