Using Calendars in Microsoft Project 2010
Part one of a three-part series of blogs

You can't do much in Microsoft Project without understanding how calendars work. Calendars control when work is allowed to happen, so it's important to set them up properly before you start planning your tasks. This blog teaches you how.

  1. Using Calendars in Microsoft Project 2010 (this blog)
  2. Creating Exceptions in Microsoft Project 2010
  3. Creating New Calendars in Microsoft Project 2010

Posted by Andrew Gould on 02 March 2012 | 8 comments

You need a minimum screen resolution of about 700 pixels width to see our blogs. This is because they contain diagrams and tables which would not be viewable easily on a mobile phone or small laptop. Please use a larger tablet, notebook or desktop computer, or change your screen resolution settings.

Using Calendars in Microsoft Project 2010

In Microsoft Project calendars determine when your tasks can happen, and you won't get far in planning a project unless you understand them!  This blog series teaches you how to set up your calendars properly to reflect the working times of your organisation.  You can watch a video version of this tutorial if you prefer, but you'll miss out on some useful diagrams later on!

Choosing a Project Calendar

Each new project that you create comes along with a set of default calendars.  The first step in creating a new project is usually to assign one of these calendars as the project calendar.  To do this:

  1. From the ribbon select: Project -> Project Information
  2. Use the option shown below to select a calendar for the project.
Choosing a project calendar

Here we're selecting from the three default calendars in Microsoft Project.

  1. Click OK to confirm your choice of calendar.

The Three Default Calendars

The three calendars you can choose from are:

  • Standard - Provides a "normal" working week of Monday to Friday with default working hours on those days.
  • Night Shift - Provides a model for a suggested night shift working pattern.
  • 24 Hours - There is no non-working time in this calendar.  This should only be used if you are Jack Bauer.

It's a somewhat difficult choice to make at this stage as you have no idea what Project thinks Standard working hours are.  The next step is to find out more detail about the calendar you've chosen.

Viewing Calendar Details

To see the details of a calendar:

  1. From the ribbon select: Project -> Change Working Time
Change working time dialog

White days are working days and grey-shaded days are non-working days.

  1. Select the name of a calendar from the drop down list.  Here the Standard calendar is marked as the (Project Calendar) because that's the one we selected in the Project Information dialog box earlier.
  2. Click on any of the days in the grid.
  3. Use this area to discover the working hours for the selected day.

Microsoft Project Date Trivia: Did you know that the calendar in Project ranges from January 1st, 1984 through to December 31st, 2049?  I'm not sure what Microsoft thinks is going to happen after this, but make sure your projects are finished before that date!

What's Next?

When you've viewed the details of the default calendars you'll probably realise that none of them match your exact needs.  The next part of this blog series will teach you how to make modifications to an existing calendar, and how to create brand new calendars from scratch.


This blog has 8 comments

Comment added on 31 July 2012 at 10:36 GMT
Thanks a lot. I was having a hard time on this one but you just laid it simple and straight forward.
Reply from Andrew Gould
Happy it helped!
Comment added on 28 August 2012 at 12:34 GMT

Many thanks for the guides; I'd be very grateful for your help in my issue.  I'm working on an education project and want to show the half-term holidays for the College (which will remain aas working time for the project) on a vertical shaded bar in the Gantt view (as for the Christmas holidays which I've set up as non-working time).  The project will be unaffected by this as the team will continue to work, but all need to be aware of this period.  Can I you show me how to shade this week and label it if possible as I'm sure I've done this in earlier versions of Project.  Do I have to create a separate calendar for the College?

Thanks in advance..

Reply from Andrew Gould

Hi Peter,

If you want to be able to display the half-term holidays as working time then the best solution might be to simply draw a rectangle or text box shape and attach it to a specific point in the timescale.  To do this:

1) Head to the Gantt Chart Tools Format tab at the right-hand side of the ribbon.

2) Click the Drawing tool at the right-hand side of this tab and choose the Text box option.

3) Click and drag on the Gantt chart to draw the text box.  You can type in some text to label the shape when you've finished drawing.

4) Right-click on the border of the text box you've just drawn and choose Properties from the menu.

5) On the Line & Fill tab you can change the outline and background colour of the shape.

6) On the Size & Position tab you can choose to attach the shape to the start date of your half-term holidays.  You'll probably have to play around with the width and height settings to get the object to appear exactly where you want.

I hope that helps.  Let me know how you get on!

Comment added on 29 August 2012 at 13:00 GMT

Great explaination of calendars, but how best to handle the scheduling of tasks when 1 resource is only available 3 days a week. Rather than use % available because if working on the project you want 100% available in 3 days rather than across 5 days. I know resorurces can have their own calendar for working, but project doesnt seem to want to play with the tasks !



Reply from Andrew Gould

Traditionally one of the most awkward things to model in MS Project, particularly if you have different people with different working times assigned to the same task!  The starting point is, as you say, creating a specific calendar for the resource which sets their working days.  When you assign the resource to a task MS Project will only allow the resource to work during the time specified by their calendar.  When it's a single person assigned to the task this is normally very straightforward.  If you already had other people assigned to the task with different working times however things can get very messy indeed.  The key to making this work properly is in ensuring you have assigned the correct Task Type (Fixed Work, Fixed Duration, Fixed Units) to the task and set its Effort Driven property appropriately.  This is something we cover in detail on our training courses!

Comment added on 16 November 2012 at 04:33 GMT
I am using MS Project 2007 version and by using Organizer copied a tailored calendar from a project to the one I am currently working on.  I turned on the newly copied calendar in the Project information window and yet there are tasks scheduled during non-working days per the tailored calendar.  Where am I going wrong?  Thanks for your help!
Reply from Andrew Gould


I can think of a few reasons why the existing tasks in your current project are still scheduled during the non-working time of your new calendar:

1) The tasks already have their own calendar assigned - check the Advanced tab of the Task Information dialog box to make sure the Calendar option is set to None.

2) The tasks have a resource assigned to them and the resource's calendar does not match the non-working time of your new calendar - go to the Resource Sheet view and check which calendar each resource has assigned.

3) You've already recorded some actual values in the Tracking Table saying that the tasks have already started or finished.

You should also check to make sure that your tasks really are scheduled during non-working time.  In the Gantt chart it can be difficult to see when tasks are really happening.  For example, using the Standard base calendar you can schedule a task to begin on a Friday with a duration of 2 days and it will appear on the Gantt chart as a task bar which spans Friday to Monday, appearing to work during Saturday and Sunday as well.

One easy way to check if your new calendar is being used by the project is to create a new task and try to set its Start Date to a day which you know is non-working.  If you see a Planning Wizard dialog box appear telling you that you've chosen a non-working day at least you know that the calendar is working for new tasks.

I hope some of that helps, let us know how you get on.

Comment added on 22 November 2012 at 14:13 GMT
It was really good help to understand the calenders.
Comment added on 26 February 2013 at 12:55 GMT
Hi Andrew,

I really appreciate for your guides. But i have a question about "assigning a calendar to a task". I got this, but i can't succeed assing a calendar to ALL TASK at a time. Is there any way to do this? 
Reply from Andrew Gould

Hi Poyraz,

The method that should work for assigning a calendar to multiple tasks is:

1) Select the names of the tasks whose calendar you want to change.

2) Right-click on any of the selected tasks and choose Task Information...

3) On the Advanced tab choose the calendar you want to use

4) Click OK

Let me know if this method doesn't work for you!

Comment added on 26 February 2013 at 14:34 GMT
Thanks a lot, but I feel myself stupid, because it seems too easy :) 

If i assign a calendar to project by using project information box, is it really necessary to assign a calendar to a task?

Reply from Andrew Gould

No problem!

If you assign a calendar to a project then each task that you create will use the working time of the project calendar. The idea of assigning calendars to a task is to control those tasks which do not occur during the normal working time of your project.

Also, if you assign a work resource to a task the task will only happen during the resource's working time.  If you don't want this to happen you can assign a calendar to the task to force the resource to work when you want the task to occur.

Comment added on 21 April 2013 at 13:50 GMT
how i can copy exception attached to a project calender to global template? I copied calender but there were no exceptions available in global tamplate calender.
Reply from Andrew Gould

Are you using the Organizer tool to copy your calendar to Global.mpt?

Which calendar are you copying?  If a calendar with the same name already exists in Global.mpt you must make sure to replace it with the one you are copying.  Alternatively, you can rename the existing calendar first using the Organizer tool.

A full-blown discussion forum is being built for this site, which will allow you once more to add comments and discussion threads.