One of the takeaways from the recent Construction CPM Scheduling Conference in New Orleans last week (other than a couple of hurricanes on Bourbon street) was an acknowledgement that while Microsoft Project does indeed enable best practice scheduling, by default many of the required features are turned off. This causes some frustration on behalf of the scheduler who must hunt deep into the Options panel to identify and select the appropriate options for each new project.
To assist in this endeavor, I wrote this little macro. It basically goes through the options and sets them to optimize the scheduling interface for detailed construction scheduling (and therefore may have to be tweaked to support project scheduling in other domains). In the past, I’ve triggered this macro whenever I run any other scripts on the schedule, i.e. I’ve written scripts to facilitate the update process….which call this routine up before going into collecting the update data.
Did I forget a key setting? Let me know and I’ll update it accordingly.
Dim Continue As String
Continue = MsgBox("This macro will now apply the standard PMO settings to the project schedule.", vbOKCancel, "Confirm")
If Continue = vbOK Then
'1 - Project Settings
.AutoTrack = True 'Sets the task status updates resource status setting
.MoveCompleted = True 'Move completed work prior to the status date.
.MoveRemaining = True 'Move incomplete work after the status date
.SpreadPercentCompleteToStatusDate = True 'spread %Complete to the status date
.NewTasksCreatedAsManual = False 'Turn off manual tasks
.DisplayProjectSummaryTask = True 'Display project summary task
.AutoLinkTasks = False 'Do not automatically link tasks when added to the schedule
.MultipleCriticalPaths = True 'Calculate multiple critical paths
'2 - Display Settings
Application.NewTasksStartOn (pjProjectDate) 'Sets new tasks to default to the Project Start Date
Application.DisplayEntryBar = True 'Displays the Entry Bar
Application.Use3DLook = False 'Turns off 3D which used to cause printing issues
'3 - Gantt Chart Settings
GridlinesEditEx Item:=12, NormalType:=3 'Set the Status Date line
GridlinesEditEx Item:=12, NormalColor:=192
GridlinesEditEx Item:=4, NormalType:=0 'Turn off the Current Date line
GridlinesEditEx Item:=0, Interval:=3 'Set dotted lines on every third Gantt row
GridlinesEditEx Item:=0, IntervalType:=3
GridlinesEditEx Item:=0, IntervalColor:=8355711
GridlinesEditEx Item:=13, NormalType:=3 'Set dotted lines on every vertical top tier column
GridlinesEditEx Item:=13, NormalColor:=8355711