在 MS Project 中使用 VBA 更改字段中的值
Changing a Value in a field using VBA in MS Project
我正在使用其中包含查找值的 Text1
字段,并基于我想要的特定值,然后将字段 "Marked" 更新为等于 "Yes"
Text1
值
- 估计的正好
- 延迟
我试过在自定义字段中使用公式
IIf([Text1]="On Target",[Marked]="True",[Marked]="False")
我实际上是在 Text1 = Delayed
时尝试有条件地格式化该行。我想这样做的一个原因是要使用很少使用的字段,例如[Marked]。
这是一个 vba 过程,它将根据 Text1
字段的值设置 Marked
字段。
Sub SetMarked()
Dim tsk As Task
For Each tsk In ActiveProject.Tasks
If Not tsk Is Nothing Then
tsk.Marked = (tsk.Text1 = "On Target")
End If
Next tsk
End Sub
仅供参考:可以使用公式自定义 Flag1-10
字段以执行相同的操作:IIf([Text1]="On Target",True,False)
。标志字段可用于自定义甘特图条,但不能用于甘特图 table 中的文本(如 Marked
字段可以)。
我正在使用其中包含查找值的 Text1
字段,并基于我想要的特定值,然后将字段 "Marked" 更新为等于 "Yes"
Text1
值
- 估计的正好
- 延迟
我试过在自定义字段中使用公式
IIf([Text1]="On Target",[Marked]="True",[Marked]="False")
我实际上是在 Text1 = Delayed
时尝试有条件地格式化该行。我想这样做的一个原因是要使用很少使用的字段,例如[Marked]。
这是一个 vba 过程,它将根据 Text1
字段的值设置 Marked
字段。
Sub SetMarked()
Dim tsk As Task
For Each tsk In ActiveProject.Tasks
If Not tsk Is Nothing Then
tsk.Marked = (tsk.Text1 = "On Target")
End If
Next tsk
End Sub
仅供参考:可以使用公式自定义 Flag1-10
字段以执行相同的操作:IIf([Text1]="On Target",True,False)
。标志字段可用于自定义甘特图条,但不能用于甘特图 table 中的文本(如 Marked
字段可以)。