MS Project VBA:tsk.Predecessors与dep.Path字段无法更新求助
MS Project VBA修改前置任务字段问题解答
核心结论
tsk.Predecessors和dep.Path都是只读字段,无法直接通过赋值或SetField方法修改,MS Project不允许这种直接覆盖的操作。
正确修改前置任务的方法
要添加或修改任务的前置关系,必须通过TaskDependencies集合来操作,示例代码如下:
' 声明对象 Dim tsk As Task Dim newDep As TaskDependency ' 获取目标任务 Set tsk = ActiveProject.Tasks("需要设置前置的任务") ' 添加前置任务(以完成-开始类型为例) Set newDep = tsk.TaskDependencies.Add( _ PredecessorID:=ActiveProject.Tasks("前置任务").ID, _ Type:=pjFinishToStart _ ) ' 修改现有前置任务的类型(如果需要) newDep.Type = pjStartToStart
关于dep.Path字段
Predecessor对象的Path字段仅用于展示前置任务的路径信息,属于计算得出的只读字段,同样无法直接修改,只能通过调整任务依赖关系来间接改变其显示内容。
内容的提问来源于stack exchange,提问作者Wayne Walker
相关产品推荐
相关产品推荐

