【发布时间】:2021-10-23 14:18:46
【问题描述】:
我正在寻找一种在 MSProject 上创建时间线的方法,其颜色与我任务的“Text2”列中的关键字匹配。为此,我选择具有正确关键字的任务,并使用“TaskOnTimeline”命令。但是,此命令不会选择它刚刚插入时间线的任务,而且我在 vba 论坛中找不到似乎这样做的命令。有没有人知道避免这个问题的方法或特定命令? (顺便说一下,我用的是 MSProject 2016)
编辑:这是我使用的代码,我之前创建了两个数组,L()(为时间轴上的任务着色的关键词列表)和 Couleur()(颜色)
WindowActivate TopPane:=True
SelectRow Row:=1, RowRelative:=False
For i = 1 To ActiveProject.Tasks.Count
SelectRow Row:=i, RowRelative:=False
If Not ActiveProject.Tasks(i) Is Nothing Then
If InStr(1, ActiveProject.Tasks(i).Text2, "Titre", 1) <> 0 Then
WindowActivate TopPane:=False
InsertTimelineBar
WindowActivate TopPane:=True
TaskOnTimeline
'Rajouter de mettre la tache en legende
Else
If Not ActiveProject.Tasks(i).Text2 = "" Then
For y = 0 To n
If InStr(L, ActiveProject.Tasks(i).Text2, L(y), 1) <> 0 Then
WindowActivate TopPane:=True
SelectRow Row:=i, RowRelative:=False
TaskOnTimeline
WindowActivate TopPane:=False
Font32Ex CellColor:=Couleur(y)
End If
Next y
End If
End If
End If
Next i
问题是当我在时间轴上添加任务时;我尝试为添加的任务着色(在时间轴上而不是在甘特表上),但未选择任务,因此 Font32Ex 命令不起作用。
【问题讨论】:
-
1) 编辑您的问题以显示您目前拥有的代码。 2) 是否将正确的任务添加到时间线,但您还想在甘特图中选择它?
-
感谢您的回答!我添加了代码,我想在时间轴上选择的任务是在甘特图表上选择的,但不是在时间轴上(因此,如果我愿意,我可以为甘特图表着色,但不幸的是,我不能为时间轴着色)
标签: vba ms-project