Поделиться через


Свойство Task.PathSuccessor (Project)

Возвращает значение, указывающее, является ли задача преемником выбранной задачи при выборе элемента Преемники в раскрывающемся списке Путь к задаче . Только для чтения, Boolean.

Синтаксис

выражение. PathSuccessor

Выражение Переменная, представляющая объект Task .

Замечания

Свойство Task.PathSuccessor связано с элементом "Преемники " в раскрывающемся списке "Путь к задаче " на вкладке "ФОРМАТ " в разделе GANTT CHART TOOLS на ленте. Путь к задаче в основном является функцией форматирования в клиенте Project, где задачи на диаграмме Ганта имеют цвета, зависящие от текущего выбора задачи и связи указанной задачи с выделенной. На рис. 1 в раскрывающемся списке Путь к задаче выбраны элементы "Движущие предшественники" и "Управляемые преемники". Если выбрать T3, на диаграмме Ганта показано, что T1 является движущей задачей-предшественником, а T4 — задачей-преемником.

Рис. 1. Выделение задач с помощью свойств последовательности задач

Использование свойств пути к задаче для выделения задач Свойство PathSuccessor действует не так, как выбор преемников в пользовательском интерфейсе. Вместо этого свойство PathSuccessor имеет значение True , если выполняются следующие условия: (a) задача является преемником выбранной задачи и (б) элемент "Преемники " выбран в поле Путь к задаче. Можно вручную выбрать задачу или использовать VBA для выбора задачи, а затем использовать VBA, чтобы проверить, является ли другая задача преемником выбранной задачи. Например, если выбрать третью задачу, как показано на рисунке 1, а элемент Преемники выбран в поле Путь к задаче, следующая инструкция выведет значение True в окне Интерпретация VBE.

? ActiveProject.Tasks(4).PathSuccessor

Однако если элемент "Преемники " не выбран, предыдущая инструкция выводит значение False. В project нет метода VBA, который может задавать элементы в раскрывающемся списке Путь к задаче .

Пример

Макрос TestTaskPath выбирает каждую задачу в проекте, а затем использует четыре свойства пути к задаче, чтобы показать, как другие задачи связаны с выбранной задачей.

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

Значение свойства

ВАРИАНТ

См. также

Объект task

PathDrivingPredecessor PropertyPathPredecessor PropertyPathDrivenSuccessor Property

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.