Application.CreateComparisonReport method (Project)
Creates a comparison report between two versions of a project.
expression An expression that returns an Application object.
|FileName||Optional||String||Full path and name of the project file to compare.|
|TaskTable||Optional||String||Name of the table to use for comparison in a task view.|
|ResourceTable||Optional||String||Name of the table to use for comparison in a resource view.|
|Items||Optional||PjCompareVersionItems||Specifies the type of items to compare.|
|Columns||Optional||PjCompareVersionColumns||Specifies whether to show only column data, only column differences, or both differences and data.|
|ShowLegend||Optional||Variant||If True, shows the legend in the comparison report.|
The CreateComparisonReport method compares task or resource information, but not assignment information.
The following example demonstrate how to create a comparison report. The code first checks that a project is currently open, and then checks that either tasks or resources are in the project. The comparison report is based on cost tables, filtered for only changed task or resource cost information, with columns that display only the differences between tasks or resources. Finally, the comparison report is saved with a file name based on the current (first) project.
Sub ComparisonReport () If Projects.Count = 0 Then MsgBox "You must have at least one active project open before you can compare projects.", _ vbInformation Exit Sub ElseIf ActiveProject.Tasks.Count = 0 Then If ActiveProject.ResourceCount = 0 Then MsgBox "There are no task or resources in the current project. " & vbCrLf _ & "Open a project with either tasks or resources before creating a comparison report.", _ vbInformation Exit Sub End If End If ' Get the name of the project to use for saving the comparison report. Dim currentProject As Project Set currentProject = ActiveProject Dim previousVersion As String previousVersion = "[full path to .mpp file to compare with the active project.]" CreateComparisonReport FileName:=previousVersion, _ TaskTable:="Cost", _ ResourceTable:="Cost", _ Items:=pjCompareVersionItemsChangedItems, _ Columns:=pjCompareVersionColumnsDifferencesOnly, _ Showlegend:=True ' Save the comparison report based upon the name of the first project. Dim comparisonReport As Project Set comparisonReport = ActiveProject ActiveProject.SaveAs currentProject & "_Compared.mpp" End Sub
Support and feedback
Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.