I am using MS Project 2007. I want to highlight overdue tasks in red color. Is there any way to do so?
-
Are you using Due Dates for your tasks? What condition do you use to determine if the task is overdue or not?– Al BiglanJul 1, 2011 at 4:50
-
1Yes, I have start dates and finish dates. Finish dates are auto calculated based on work and resources. So, if task is not 100% completed (%Complete field) when today's date > finish date , it is overdue.– matrixJul 1, 2011 at 14:21
-
Thanks for the question; solution below works in newer versions of Project also!– SamAug 20, 2020 at 15:38
4 Answers
I found the best approach is to use small colored icons in a number column: blue/green/yellow/red.
How I set it up
On an existing number column (e.g. Number1, etc), right-click and choose "Customize Fields" then select the individual field by name. Then, at the bottom of the form, click "Graphical Indicators" and set up ranges for each color icon, then choose the color icon itself.
For example, I wrote a custom formula (see below) that sets the value of Number1 based on the current date and the Finish date of each task. Then, using that value, I set up the Graphical Indicators to show a blue dot for complete, yellow for in progress, green for future, and red for overdue. Unfortunately, it's a bit of setup, but once it is done, it updates automatically. No macro or coding needed.
Custom Formula Setup
Paste the following into the Custom Attributes / Formula for any Number field (make sure it's all on one line):
IIf([% Complete]=100,(ProjDateDiff(now(),[Baseline Finish])/480),IIf([Baseline Finish]<now(),(10000+(ProjDateDiff([Baseline Finish],now())/480)),IIf(([Start]<(ProjDateAdd(now(),7))) And ([Baseline Finish]>(ProjDateSub(now(),7))),(5000+(ProjDateDiff(now(),[Baseline Finish])/480)),IIf(([Baseline Finish]<(ProjDateAdd(now(),7))) And ([Baseline Finish]>now()),(5000+(ProjDateDiff(now(),[Baseline Finish])/480)),IIf(([Start]<now()),(5000+(ProjDateDiff(now(),[Baseline Finish])/480)),(ProjDateDiff(now(),[Start])/480))))))
Display Setup
Under Tools | Customize | Customize Fields..., set the display to "Graphical Indicators." Set it to "Nonsummary rows" and add the following tests:
- is greater than or equal to -- 10,000 -- image: red circle
- is greater than or equal to -- 5,000 -- image: yellow circle
- is greater than or equal to -- 0 -- image: green circle
- is less than -- 0 -- image: blue circle [N.B. not shown in screenshot]
Here's what it looks like in practice. Color coding:
- Red = late
- Blue = done
- Empty cell? That task is either a summary task or a task that has not been baselined
-
Well well. TechRepublic has a simpler Late-or-Complete indicator: techrepublic.com/blog/tech-manager/… if all you care about is whether or not a task is late. My formula, though more complex, gives you more granular visibility into task status showing what tasks are slipping or upcoming as well as late and complete.– balinjdlJan 31, 2013 at 20:44
-
I can get you closer but not all the way there. I figured out how to color code completed tasks but not late tasks.
- In the gantt chart area, right click and select "Bar Styles..."
- Under normal tasks, insert a row
- Select an appearance you want for the bar
- In the drop down menu under "Show..For Tasks" select "finished"
Now, all finished tasks are color coded. I'm still trying to figure out the correct options for late tasks. It must be in there somewhere.
-
+1. @SBWorks. It's a good piece of information and give me several possibilities. In my Gnatt chart, I have marked all finished tasks as green, in-progress tasks as yellow. So rest not-started tasks are in blue. Now my Gnatt chart is more visibly informative. However, it does not solve my problem of highlighting overdue task.– matrixJul 8, 2011 at 6:51
You format the text - I have a different version from yours but all versions have a way to do it. IF you can't find it in the ribbon, go to help and ask the question.
-
1I think i did not make it clear. I do not want to do it manually... instead I want Project to do it for me. When ever I open my project, it should show the overdue tasks in red highlighted color.– matrixJun 30, 2011 at 8:23
You can use following formula:
IIf([Baseline Finish]=[Actual Finish],1,IIf([Baseline Finish]<[Actual Finish],ProjDateDiff([Baseline Finish],[Actual Finish])/480,IIf([Baseline Finish]>[Actual Finish] And [Actual Finish]<=now(),0,IIf([Baseline Finish]>[Actual Finish] And [Start]>now(),1,ProjDateDiff([Baseline Finish],[Actual Finish])/480))))
Colour codes:
- Greater than 5: Red
- Greater than 2: yellow
- Greater than 0: Green
- Equals 0: Blue (already completed task) Less than 0 - White (Yet to be started)
-
Unformatted answers are hard to read. While I've attempted to fix your formatting, I have no way to tell if the code is valid or accurate. Please review, and continue to improve the formatting as needed.– Todd A. Jacobs ♦Jan 20, 2015 at 0:25