【发布时间】:2020-07-01 07:28:30
【问题描述】:
我目前正在研究将产品需求导入 Microsoft Project 的 VBA 宏。
我使用以下代码添加/更新任务:
Function AddTask(strText As String, lngDuration As Long, taskParent As Task)
Dim oldTask As Task
Set oldTask = taskParent.OutlineChildren(strText)
If oldTask Is Nothing Then
Dim newTask As Task
Set newTask = taskParent.OutlineChildren.Add(Name:=strText, Before:=LastIndexOf(taskParent) + 1)
newTask.OutlineLevel = taskParent.OutlineLevel + 1
newTask.Duration = lngDuration
Set AddTask = newTask
Else
oldTask.Duration = lngDuration
Set AddTask = oldTask
End If
End Function
这非常适用于新任务,但不幸的是,当我尝试更新旧任务的 Duration 属性时遇到一个奇怪的错误。
Run-Time Error '1101'
Argument value is not valid
我真的不明白这两者有什么区别
newTask.Duration = lngDuration
和
oldTask.Duration = lngDuration
这是怎么回事?
请帮忙!
【问题讨论】:
标签: vba ms-project