One of the schedulers I support was asking me this question the other day, and it seemed like it might make a nice tip and trick.  Hence, you’re seeing it here as a blog post.

The question was how to display both Critical and Near-Critical Path tasks on the Gantt Chart – basically how to flag tasks with Total Slack below a specific predefined threshold.  You’d want to do something like this to visually identify potential risks in your schedule, and it might be used in conjunction with the Resource Critical Path technique identified in Eric Uyttewaal’s book Dynamic Scheduling with Microsoft Project 2003.

You could, of course, simply expose the Total Slack field within the table on the left of the Gantt Chart – and then add indicators and/or grouping to identify tasks with low risk. You could also simply add the slack as a graphical element to the chart in using the Format tab in 2010. This technique would be used in addition to that method in order to add a graphical element.

So let’s take the following project and see if we can modify it to display the Near Critical tasks graphically.


In Project 2010, we have a couple of options.  First off, we can display the Critical Path tasks by clicking on the Format > Critical Tasks option.


We can also toggle a Slack display by selecting the Slack option on the same tab….


But we’re going to graphically change the display to display the Near Critical Path.


The first thing we need to do is to set up a couple of custom flag fields to tell us what is “near critical.”  In this case, I want to create two flags, one for “Imminently Critical” and one for “Near Critical.”  You’ll note that I use the numbers “2401” to represent 5 days.  This is because Project calculates duration in units of minutes.  Therefore 5 days X 8 hours X 60 minutes = 2400.  I add 1 to that total to make 2401, thus simplifying my calculation.  Instead of using “less than or equal to 5 days,” I just use “less than 5 days + 1 minute.”

Field Criteria Formula
Imminent Total Slack < 5d IIf([Critical]=Yes,No,IIf([Total Slack]<2401,Yes,No))
Near Total Slack < 10d IIf([Critical]=Yes,No,IIf([Total Slack]>4800,No,IIf([Total Slack]>2400,Yes,No)))

You’ll want to set the calculation for Summary Tasks to None as summary tasks should not be included on the Critical Path.


Once we confirm the formulas are working correctly, we need to modify the bar styles.  I doubleclick on the Gantt Chart, and add two new bar styles using the Critical Task as a guide.  You’ll note that the Critical Task format only appears in the bar styles when Critical is checked on the Format tab.


…and now my Gantt Chart displays the following (note that you probably want to modify the patterns in a real implementation for your colorblind colleagues).


…and that’s about it.  In future posts, I hope to visit the concept of Ribbon customization and figure out how to add a formatting check box to the Format tab to include the custom graphical elements we’ve just added.