我正在尝试向 MS Project 中的前任字段添加时间滞后,当与该前任相比已经存在滞后时,我遇到了困难。
例如,当它只是一个前身时,我只是使用:
T.Predecessors + "FS +" & Time_lag & " hrs"
但是,如果已经存在时间延迟,我正在努力解决如何在已经存在与该任务相关联的 3 小时延迟的情况下添加另一个 2 小时延迟。
我确信有比使用基于文本的方法添加滞后更好的方法。
我正在尝试向 MS Project 中的前任字段添加时间滞后,当与该前任相比已经存在滞后时,我遇到了困难。
例如,当它只是一个前身时,我只是使用:
T.Predecessors + "FS +" & Time_lag & " hrs"
但是,如果已经存在时间延迟,我正在努力解决如何在已经存在与该任务相关联的 3 小时延迟的情况下添加另一个 2 小时延迟。
我确信有比使用基于文本的方法添加滞后更好的方法。
它有助于记住 Predecessor 字段显示串在一起(逗号分隔)的任务依赖项的集合。您要做的是更新该特定依赖项,而不是整个集合。Task Dependency对象有几个属性,包括Lag。
在您的场景中,您有一个具有单个依赖项的任务,并且您希望将 2 小时添加到滞后,t您的任务在哪里,滞后以分钟为单位表示:
t.TaskDependencies(1).Lag = t.TaskDependencies(1).Lag + 60 * 2
在更复杂的场景中,任务将具有多个依赖项,您需要找到正确的依赖项。在这种情况下,我们为 UniqueID 为 2 的前置任务的链接设置了 2 天的延迟:
Dim td As TaskDependency
For Each td In t.TaskDependencies
If td.From.UniqueID = 2 Then
td.Lag = 60 * 8 * 2
End If
Next td