Application.AddSiteColumn メソッド (Project)
アクティブなプロジェクトの同期済み SharePoint サイトのタスク リストで使用できる列を追加します。
構文
式。AddSiteColumn (ProjectField、 SharePointName)
expressionApplication オブジェクトを 表す変数。
パラメーター
名前 | 必須 / オプション | データ型 | 説明 |
---|---|---|---|
ProjectField | 省略可能 | PjField | PjField 列挙の定数のサブセットの 1 つを指定できます。これは、新しい列に表示するプロジェクト フィールドを指定します。は禁止フィールドの 1 つにすることはできません (「備考」を参照してください)。 |
SharePointName | オプション | バリアント型 | 新しい列の名前。 |
戻り値
ブール型 (Boolean)
True を指定 すると、列が追加されます。
注釈
AddSiteColumn メソッドは、次の場合に実行時エラー 1004 "アプリケーション定義またはオブジェクト定義エラー" を提供します。
アクティブなプロジェクトは、同期された SharePoint タスク リストに関連付けられていない。 プロジェクトがローカルの場合は、 LinkToTaskList メソッドを使用して、同期された SharePoint タスク リストを作成できます。
列名は SharePoint タスク リストに既に存在します。 列名の一覧を表示するには、SharePoint でタスクリストを開き、[リスト] タブの [ビューの変更] を選択します。[設定>] [ビューの編集] ページには、タスク の一覧で使用できる列名がすべて表示されます。
ProjectField 値は、pjResourceActualCost などのタスク以外のフィールドです。 SharePoint タスク リストには、リソース フィールドではなくタスク フィールドが表示されます。
ProjectField 値は、pjTaskEnterpriseProjectText1 などのエンタープライズ ユーザー設定フィールド、または pjTaskResourceEnterpriseRBS などのルックアップ テーブル フィールドです。 pjTaskText1 などのローカル タスクのユーザー設定フィールドは有効です。
ProjectField 値は、表 1 の禁止フィールドの 1 つです。 これらのフィールドは、禁止されているリソース フィールドとエンタープライズ ユーザー設定フィールドに加えてあります。 フィールドは、他の禁止フィールドに関連しているか、既定の SharePoint タスク リストでサポートされていない値型を持っているため、禁止されています。
次の表に示す禁止フィールドは長いリストのように見えるかもしれませんが、 PjField の 1,338 個の定数のうち、 AddSiteColumn メソッドで使用できる 357 個 (ローカル タスクのユーザー設定フィールドを含む) があります。
その他の禁止フィールド
フィールド | フィールド | フィールド |
---|---|---|
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 |
SharePointName パラメーターに一意の名前を使用する場合は、タスク リストに既に存在するフィールドを追加することもできますが、その値は疑問です。
例
AddDurationColumns マクロを使用するには、SharePoint サイトにタスク リストを作成し、Project Professionalでプロジェクトを作成してから、LinkToTaskList メソッドを使用してタスク リストをインポートします。 リボンの [プロジェクト] タブで [基準計画の設定] コマンドを使用して、作業中のプロジェクトの基準計画を設定し、一部のタスクの期間を変更します。
AddDurationColumns マクロは、SharePoint タスク リスト内の使用可能な列の一覧にタスクの期間と基準期間を追加します (図 1 を参照)。
注:
AddDurationColumns マクロを実行した後、プロジェクトを Project Professional に保存して、変更を SharePoint タスク リストと同期する必要があります。
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
プロジェクトを保存したら、SharePoint のタスク リストに移動します。 [リスト] タブの [ビューの変更] コマンドを選択します。 [設定 - ビューの編集] ページで、AddDurationColumns マクロが追加した [基準期間] フィールドと [現在の期間] フィールドを選択します。 図 1 は、2 つの新しいフィールドを含むタスク リストを示しています。
図 1. 同期された SharePoint タスク リストへのフィールドの追加
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。