Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Fügt eine Spalte hinzu, die für die Aufgabenliste in der synchronisierten SharePoint-Website für das aktive Projekt verfügbar wird.
Syntax
Ausdruck verwendet werden. AddSiteColumn (ProjectField, SharePointName)
expression Eine Variable, die ein Application-Objekt darstellt.
Parameter
| Name | Erforderlich/Optional | Datentyp | Beschreibung |
|---|---|---|---|
| ProjectField | Optional | PjField | Kann eine Teilmenge von Konstanten in der PjField-Enumeration sein, die das Project-Feld angibt, das in der neuen Spalte angezeigt werden soll. darf keines der verbotenen Felder sein (siehe Hinweise). |
| SharePointName | Optional | Variant | Der Name der neuen Spalte. |
Rückgabewert
Boolean
"True ", wenn die Spalte hinzugefügt wird.
Hinweise
Die AddSiteColumn-Methode gibt in den folgenden Fällen den Laufzeitfehler 1004, "Anwendungsdefinierter oder objektdefinierter Fehler", zu:
Das aktive Projekt ist keiner synchronisierten SharePoint-Aufgabenliste zugeordnet. Wenn das Projekt lokal ist, können Sie die LinkToTaskList-Methode verwenden, um eine synchronisierte SharePoint-Aufgabenliste zu erstellen.
Der Spaltenname ist bereits in der SharePoint-Aufgabenliste vorhanden. Um die Liste der Spaltennamen anzuzeigen, öffnen Sie die Aufgabenliste in SharePoint, und wählen Sie dann auf der Registerkarte LISTEdie Option Ansicht ändern aus. Auf der Seite "Einstellungen Bearbeitungsansicht" werden alle Spaltennamen angezeigt, die für die Aufgabenliste verfügbar sind.>
Der ProjectField-Wert ist kein Nicht-Vorgangsfeld, z. B. pjResourceActualCost. Eine SharePoint-Aufgabenliste zeigt Vorgangsfelder, keine Ressourcenfelder.
Der ProjectField-Wert ist ein benutzerdefiniertes Enterprise-Feld, z. B. pjTaskEnterpriseProjectText1, oder ein Nachschlagetabellenfeld, z. B. pjTaskResourceEnterpriseRBS. Benutzerdefinierte Felder für lokale Aufgaben, z. B. pjTaskText1, sind gültig.
Der ProjectField-Wert ist eines der unzulässigen Felder in Tabelle 1. Diese Felder gelten zusätzlich zu den unzulässigen Ressourcenfeldern und den benutzerdefinierten Enterprise-Feldern. Die Felder sind verboten, da sie mit anderen unzulässigen Feldern verknüpft sind oder Werttypen aufweisen, die in einer standardmäßigen SharePoint-Aufgabenliste nicht unterstützt werden.
Obwohl die Liste der unzulässigen Felder in der folgenden Tabelle lang zu sein scheint, gibt es von den 1.338 Konstanten in PjField 357 – einschließlich benutzerdefinierter Felder für lokale Aufgaben –, die mit der AddSiteColumn-Methode verwendet werden können.
Zusätzliche unzulässige Felder
| Feld | Feld | Feld |
|---|---|---|
| pjTaskActive | pjTaskActualOvertimeWork | pjTaskACWP |
| pjTaskAssignmentDelay | pjTaskAssignmentPeakUnits | pjTaskAssignmentUnits |
| pjTaskBaseline[1-10]BudgetCost | pjTaskBaseline[1-10]BudgetWork | pjTaskBaseline[1-10]FixedCostAccrual |
| pjTaskBaselineBudgetCost | pjTaskBaselineBudgetWork | pjTaskBaselineFixedCostAccrual |
| pjTaskBudgetCost | pjTaskBudgetWork | pjTaskCalendarGuid |
| pjTaskConstraintDate | pjTaskConstraintType | pjTaskCostRateTable |
| pjTaskDeliverableGuid | pjTaskDeliverableType | pjTaskDemandedRequested |
| pjTaskEarnedValueMethod | pjTaskEnterpriseOutlineCode[1-30] | pjTaskExternalTask |
| pjTaskFinishSlack | pjTaskFixedCostAccrual | pjTaskFreeSlack |
| pjTaskGuid | pjTaskHideBar | pjTaskHyperlink |
| pjTaskHyperlinkAddress | pjTaskHyperlinkHref | pjTaskHyperlinkScreenTip |
| pjTaskHyperlinkSubAddress | pjTaskID | pjTaskIgnoreWarnings |
| pjTaskIndicators | pjTaskIsAssignment | pjTaskLevelAssignments |
| pjTaskLevelDelay | pjTaskLinkedFields | pjTaskManual |
| pjTaskMilestone | pjTaskNotes | pjTaskObjects |
| pjTaskOutlineCode[1-10] | pjTaskOutlineLevel | pjTaskOutlineNumber |
| pjTaskPathDrivenSuccessor | pjTaskPathDrivingPredecessor | pjTaskPathPredecessor |
| pjTaskPathSuccessor | pjTaskPreleveledFinish | pjTaskPreleveledStart |
| pjTaskPriority | pjTaskResourceType | pjTaskStartSlack |
| pjTaskStatus | pjTaskStatusIndicator | pjTaskSubproject |
| pjTaskSubprojectReadOnly | pjTaskTotalSlack | pjTaskType |
| pjTaskWarning | pjTaskWorkContour |
Es ist möglich, ein Feld hinzuzufügen, das bereits in der Aufgabenliste vorhanden ist, wenn Sie einen eindeutigen Namen für den SharePointName-Parameter verwenden, obwohl der Nutzen dieser Vorgehensweise fraglich ist.
Beispiel
Um das AddDurationColumns-Makro zu verwenden, erstellen Sie eine Aufgabenliste auf einer SharePoint-Website, erstellen Sie ein Projekt in Project Professional, und verwenden Sie dann die LinkToTaskList-Methode zum Importieren der Aufgabenliste. Legen Sie mit dem Befehl "Basisplan festlegen " auf der Registerkarte PROJEKT des Menübands einen Basisplan für das aktive Projekt fest, und ändern Sie dann die Dauer einiger Aufgaben.
Das AddDurationColumns-Makro fügt der Liste der verfügbaren Spalten in der SharePoint-Aufgabenliste die Aufgabendauer und die geplante Soll-Dauer hinzu (siehe Abbildung 1).
Hinweis
Nachdem Sie das AddDurationColumns-Makro ausgeführt haben, müssen Sie das Projekt in Project Professional speichern, um Ihre Änderungen mit der SharePoint-Aufgabenliste zu synchronisieren.
Sub AddDurationColumns()
Dim success As Boolean
Dim results As String
Dim columnName As String
Dim fieldName As PjField
results = ""
' Add the first column.
fieldName = pjTaskBaselineDurationText
columnName = "Baseline duration"
' If the field name exists in the SharePoint tasks list, or fieldName
' is one of the prohibited fields, the AddSiteColumn method
' returns error 1100.
On Error Resume Next
success = AddSiteColumn(fieldName, columnName)
If success Then
results = "Added site column: " & columnName
Else
results = "Error in AddSiteColumn: " & columnName
End If
' Add the second column.
fieldName = pjTaskDurationText
columnName = "Current duration"
success = AddSiteColumn(fieldName, columnName)
If success Then
results = results & vbCrLf & "Added site column: " & columnName
Else
results = results & vbCrLf & "Error in AddSiteColumn: " & columnName
End If
Debug.Print results
End Sub
Nachdem Sie das Projekt gespeichert haben, wechseln Sie zur Aufgabenliste in SharePoint. Klicken Sie auf der Registerkarte LISTE auf den Befehl Ansicht ändern . Wählen Sie auf der Seite Einstellungen – Ansicht bearbeiten das Feld Geplante Dauer und das Feld Aktuelle Dauer aus, das durch das Makro AddDurationColumns hinzugefügt wurde. Abbildung 1 zeigt die Aufgabenliste mit den beiden neuen Feldern.
Abbildung 1: Hinzufügen von Feldern zu einer synchronisierten SharePoint-Aufgabenliste
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.