我的工作生成了很大的(2k多个任务)MS项目文件,但是,许多任务是“虚拟任务”,不需要使用,因此删除它们需要我和其他人完成。我们删除了“最低级别”的任务,这意味着它们没有子任务,并且它们具有特定的长度(例如1000天)。
所以我正在寻找一个宏,如果可能的话,它会遍历任务,并删除所有没有子任务且持续时间为1000天的任务。
我没有使用MS项目的经验,而且总体而言,使用VBA和编程的经验非常有限。我已经用Google搜索了很多,但是没有取得任何进展。
先谢谢了。奥斯卡
我现在得到的代码:
Sub DeleteMsProjectTask()
Dim proj As Project
Dim t As Task
Set proj = ActiveProject
Do While proj.Tasks.Count > 0
For Each t In proj.Tasks
If Not (t.Summary) Then
t.Delete
End If
Next t
Loop
End Sub
答案 0 :(得分:1)
我认为您需要在if语句中添加一些元素。
使用类似If t.OutlineChildren.count = 0 and t.Duration > 480000
Duration
属性显然是在工作日的分钟数内计算的,因此您必须找出适合您的数字。