自定义字段错误

问题描述 投票:0回答:1

我录制这个宏是为了自动将公式插入到自定义字段中,但是总是出现这个错误。有人可以帮助我吗?

enter image description here

通过 VBA 将公式插入自定义字段。显示错误消息。

这是我正在使用的代码:

CustomFieldSetFormula FieldID:=pjCustomTaskText1, Formula:="format(IIf([Custo]=0;[% trabalho concluído];[COTA]/[Custo]*100);#0.0) & %"
CustomFieldPropertiesEx FieldID:=pjCustomTaskText1, Attribute:=pjFieldAttributeFormula, SummaryCalc:=pjCalcFormula, GraphicalIndicators:=False, AutomaticallyRolldownToAssn:=False
vba custom-fields ms-project
1个回答
0
投票

代码有一些不同的问题。

  1. 语句中的分隔符有的为逗号,有的为分号。所有分隔符必须相同,具体取决于您的系统设置
  2. 您正在尝试格式化整个 IIF 语句,但这不是您想要的。您只想格式化 IIF 语句的 false 参数
  3. 公式作为字符串语句输入,因此将有左引号和右引号来描述字符串。但是,格式函数还有一个字符串参数(即格式规范),并且必须用双引号显示。同样的事情也适用于 % 符号,它需要显示为双引号中的字符串。

尝试这个构造,它对我有用: CustomFieldSetFormula FieldID:=pjCustomTaskText2, 公式:="IIf([Custo]=0,[% trabalho concluido],format([COTA]/[Custo]*100,""#0.0"") & ""%"") ” CustomFieldPropertiesEx FieldID:=pjCustomTaskText2、属性:=pjFieldAttributeFormula、SummaryCalc:=pjCalcNone、GraphicalIndicators:=False、AutomaticallyRolldownToAssn:=False

© www.soinside.com 2019 - 2024. All rights reserved.