Verwalten der Berechnungsoptionen von Project mithilfe von Skripts

Beispiele für VBScript-Skripts zum Abrufen und Konfigurieren der in Microsoft Project 2003 unter Berechnen verfügbaren Optionen.

*
**
**

Zuordnen des Dialogfelds zum Project-Objektmodell

Die in den folgenden Skripts verwendeten Optionen entsprechen den Optionen auf der Registerkarte Berechnen im Dialogfeld Optionen. Um auf diese Optionen in Microsoft Project 2003 zuzugreifen, klicken Sie auf Extras, Optionen und dann auf die Registerkarte Berechnen. Eine Zuordnung zwischen den verfügbaren Optionen in diesem Dialogfeld und dem Microsoft Project-Objektmodell wird nachstehend aufgeführt.

Berechnen


Beachten Sie, dass das orangefarben dargestellte Element keine entsprechende Eigenschaft im Project-Objektmodell besitzt. Der aktuelle Wert für Eingefügte Projekte werden wie Sammelvorgänge berechnet kann mit dem Skript zum Abrufen von Eigenschaftswerten nicht zurückgegeben werden. Der Wert für dieses Element kann jedoch mit der OptionsCalculation-Methode konfiguriert werden. Ein Beispielskript, in dem OptionsCalculation verwendet wird, finden Sie auf dieser Seite.

Die auf dieser Seite aufgeführten Skripts wurden mit Microsoft Project 2003 getestet. Es ist anzunehmen, dass jede Version von Microsoft Project, die Visual Basic für Applikationen (VBA) unterstützt, zumindest einen Teil der bereitgestellten Funktionen ausführen kann. Die Skripts wurden jedoch nicht in einer dieser Versionen getestet.

Zum SeitenanfangZum Seitenanfang

Beispielcode zum Abrufen von Werten

Beispielskript zum Abrufen der Konfigurationsinformationen von der Registerkarte Berechnen im Dialogfeld Optionen von Microsoft Project 2003.

Const pjDoNotSave = 0

Set objProject = CreateObject("MSProject.Application")

Set colProjects = objProject.Projects
Set objDoc = colProjects.Add()

Wscript.Echo "Calculation mode: " & objProject.Calculation
Wscript.Echo "Updating task status updates resource status: " & objDoc.AutoTrack
Wscript.Echo "Move end of completed parts after status date back to status date: " _
    & objDoc.MoveCompleted
Wscript.Echo "And move start of remaining parts back to status date: " _
    & objDoc.AndMoveRemaining
Wscript.Echo "Move start of remaining parts before status date forward to status date: " _
    & objDoc.MoveRemaining
Wscript.Echo "And move end of completed parts forward to status date: " & _
    objDoc.AndMoveCompleted
Wscript.Echo "Edits to total actual cost will be spread to the status date: " & _
    objDoc.SpreadCostsToStatusDate
Wscript.Echo "Edits to total task % complete will be spread to the status date: " & _
    objDoc.SpreadPercentCompleteToStatusDate
Wscript.Echo "Actual costs are always calculated by Microsoft Office Project: " _
    & objDoc.AutoCalcCosts
Wscript.Echo "Default fixed costs accrual: " & objDoc.DefaultFixedCostAccrual
Wscript.Echo "Calculate multiple critical paths: " & objDoc.MultipleCriticalPaths
Wscript.Echo "Tasks are critical if slack is less than or equal to: " & _
    objDoc.ShowCriticalSlack

objProject.Quit(pjDoNotSave)
Zum SeitenanfangZum Seitenanfang

Beispielcode zum Ändern von Werten

Beispielskript zum Deaktivieren der Option Aktuelle Kosten werden immer von Microsoft Office Project berechnet.

Const pjDoNotSave = 0

Set objProject = CreateObject("MSProject.Application")

Set colProjects = objProject.Projects
Set objDoc = colProjects.Add()

objDoc.AutoCalcCosts = FALSE

objProject.Quit(pjDoNotSave)
Zum SeitenanfangZum Seitenanfang

Beispielcode zum Ändern von Werten ohne entsprechende Eigenschaften

Beispielskript zum Deaktivieren der Option Eingefügte Projekte werden wie Sammelvorgänge berechnet. Die Kommas vor dem Wert FALSE stehen für andere Werte, die mit dieser Methode konfiguriert werden können. Durch die leeren Parameter wird angezeigt, dass die Methode die Werte dieser Elemente nicht ändern soll.

Set objProject = CreateObject("MSProject.Application")

Set colProjects = objProject.Projects
Set objDoc = colProjects.Add()

errReturn = objProject.OptionsCalculation(,,,,,,,,,FALSE) 

objProject.Quit(pjDoNotSave)
Zum SeitenanfangZum Seitenanfang

Die Beispielskripts werden nicht durch die Standardsupportprogramme und -dienste von Microsoft unterstützt. Die Beispielskripts werden im gegenwärtigen Zustand und ohne jegliche Gewährleistung zur Verfügung gestellt. Microsoft schließt darüber hinaus jede konkludente Gewährleistung aus, einschließlich und ohne Einschränkung jeglicher konkludenten Gewährleistung der Handelsüblichkeit oder Eignung für einen bestimmten Zweck. Alle Risiken, die aus der Verwendung oder Ausführung der Beispielskripts und der Dokumentation entstehen, unterliegen vollständig Ihrer Verantwortung. In keinem Fall können Microsoft, ihre Autoren oder andere an der Erstellung, Produktion oder Bereitstellung der Skripts Beteiligten für irgendwelche Schäden haftbar gemacht werden (einschließlich und ohne Einschränkung aller Schäden durch Geschäftsverluste, Geschäftsausfälle, den Verlust von Geschäftsinformationen oder andere finanzielle Verluste), die aus der Verwendung oder der Nichteignung zur Verwendung der Beispielskripts oder der Dokumentation entstehen, auch wenn Microsoft über die Möglichkeit solcher Schäden unterrichtet worden ist.


Zum SeitenanfangZum Seitenanfang