Свойство 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
Значение свойства
ВАРИАНТ
См. также
PathDrivingPredecessor PropertyPathPredecessor PropertyPathDrivenSuccessor Property
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.