Prinzipiell gibt es zwei Ansätze, um Daten von Access nach Project zu übernehmen. Zum einen kann aus Access per VBA auf das Objektmodell von Project zugegriffen werden, zum anderen kann man Projektpläne, die in eine Datenbank gespeichert wurden, direkt über das Datenbankmodell manipulieren.
Nähere Informationen zum Objektmodell zu Project findet man in der Datei VBAPJ9.CHM, die normalerweise im Verzeichnis <C:\Programme\Microsoft Office\Office\1031 zu finden ist. Eine Beschreibung des Datenbankmodells findet sich in der Datei PROJDB.HTM in demselben Ordner. Ein Zugriff über den OLE DB Provider mittels der ActiveX Data Objects (ADO) ist nicht möglich, da hierüber nur lesend zugegriffen werden kann.
Dim ProjectApp As MSProject.Application
On Error Resume Next
Set ProjectApp = GetObject(, "MSProject.Application")
If ProjectApp Is Nothing Then MsgBox "Project ist nicht gestartet" Else MsgBox "Project ist gestartet" End If
On Error GoTo 0
ActiveProject.Tasks.Add ("Vorgang")
ActiveProject.Resources.Add ("Ressource")
Dim myTaskID, myResourceID As Long
ActiveProject.Tasks.Add ("Vorgang")
ActiveProject.Resources.Add ("Ressource")
myTaskID = ActiveProject.Tasks("Vorgang").ID
myResourceID = ActiveProject.Resources("Ressource").ID
ActiveProject.Tasks("Vorgang").Assignments.Add myTaskID, myResourceID, 1
ActiveProject.Resources(1).Assignments(1).TimeScaleData("1/2/01", _
"1/2/01",pjAssignmentTimescaledWork,pjTimescaleDays,1)(1)=480
Unser Buch zu Microsoft Project 2010 und Project Server 2010