Task.PathDrivingPredecessor プロパティ (Project)

[タスク パス] ドロップダウン リストで [先行タスクの駆動] 項目が選択されている場合に、タスクが選択したタスクを 駆動 する先行 タスク であるかどうかを示す値を取得します。 読み取り専用の Boolean です。

構文

PathDrivingPredecessor

Task オブジェクトを表す変数。

注釈

Task.PathDrivingPredecessor プロパティは、リボンの [ガント チャート ツール] の下にある [タスク パス] ドロップダウン リストの [先行タスクの駆動] 項目に関連しています。 タスク パスは主に Project クライアントの書式設定機能です。ガント チャートのタスクには、現在のタスクの選択と、指定したタスクと選択範囲の関係に依存する色があります。 図 1 では、[タスク パス] ドロップダウン リストで [先行タスクの駆動] 項目と [ドリブン 後続タスク] 項目が選択されています。 T3 を選択すると、ガント チャートに、T1 が先行タスクの駆動であり、T4 が駆動後続タスクであることが示されます。

図 1. タスクのパスのプロパティを使用してタスクを強調

タスク パスプロパティを使用してタスクを強調表示するPathDrivingPredecessor プロパティは、ユーザー インターフェイスの [先行操作の実行] の選択とは動作しません。 代わりに、PathDrivingPredecessor プロパティは、次の条件が true の場合は True です。(a) タスクは選択したタスクの先行タスクを駆動し、(b) タスク パスで [先行タスクの運転] 項目が選択されています。 タスクを手動で選択するか、VBA を使用してタスクを選択し、VBA を使用して、別のタスクが選択したタスクの先行タスクを駆動しているかどうかを確認できます。 たとえば、図 1 のように 3 番目のタスクを選択し、[タスク パス] で [先行タスクの運転] 項目が選択されている場合、次のステートメントは VBE のイミディエイト ウィンドウで True を出力します。

? ActiveProject.Tasks(1).PathDrivingPredecessor

ただし、[ 先行操作の実行 ] 項目が選択されていない場合、前のステートメントは False を出力します。 Project には、[ タスク パス ] ドロップダウン リストで項目を設定できる VBA メソッドがありません。

TestTaskPath マクロは、プロジェクト内の各タスクを選択し、次に 4 つのタスク パス プロパティを使用して、他のタスクと選択したタスクとの関係を示します。

Option Explicit

Sub TestTaskPath()
    Dim t As Task
    Dim chkTsk As Task
    Dim selectedTaskId As Integer
    
    For Each t In ActiveProject.Tasks
        selectedTaskId = t.ID
        Application.SelectRow Row:=selectedTaskId, RowRelative:=False
            
        If Not (ActiveSelection.Tasks Is Nothing) Then
            Debug.Print
            
            With ActiveSelection.Tasks(1)
                Debug.Print "Selected task ID " & .UniqueID & ", name: " & .Name
            End With
                        
            For Each chkTsk In ActiveProject.Tasks
                If Not (chkTsk.ID = selectedTaskId) Then
                    If chkTsk.PathPredecessor Then
                        Debug.Print vbTab & chkTsk.Name & ": PathPredecessor"
                    End If
                    If chkTsk.PathDrivingPredecessor Then
                        Debug.Print vbTab & chkTsk.Name & ": PathDrivingPredecessor"
                    End If
                    If chkTsk.PathSuccessor Then
                        Debug.Print vbTab & chkTsk.Name & ": PathSuccessor"
                    End If
                    If chkTsk.PathDrivenSuccessor Then
                        Debug.Print vbTab & chkTsk.Name & ": PathDrivenSuccessor"
                    End If
                End If
            Next chkTsk
        End If
    Next t
End Sub

図 1 のプロジェクトで、[タスク パス] で [先行タスク] 項目、[先行タスクの運転]、[後続タスク] 項目、および [ドリブン 後続タスク] 項目がすべて選択されている場合、TestTaskPath マクロには次の出力があります。

Selected task ID 1, name: T1
    T2: PathSuccessor
    T2: PathDrivenSuccessor
    T3: PathSuccessor
    T3: PathDrivenSuccessor
    T4: PathSuccessor
    T4: PathDrivenSuccessor

Selected task ID 2, name: T2
    T1: PathPredecessor
    T1: PathDrivingPredecessor

Selected task ID 3, name: T3
    T1: PathPredecessor
    T1: PathDrivingPredecessor
    T4: PathSuccessor
    T4: PathDrivenSuccessor

Selected task ID 4, name: T4
    T1: PathPredecessor
    T1: PathDrivingPredecessor
    T3: PathPredecessor
    T3: PathDrivingPredecessor

プロパティ値

VARIANT

関連項目

タスク オブジェクト

PathDrivenSuccessor プロパティPathPredecessor プロパティPathSuccessor プロパティ

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。