我有一个关于在Microsoft Project 2010中设置字段值的问题。自定义字段(text25)具有公式设置,
IIf([Baseline Estimated Start] = projdatevalue(“NA”),“”,Format([Baseline Estimated Start],“YYYY-MM-DD”))
当我使用Microsoft API设置此字段的值时,代码如下,MSPField是具有公式设置的字段。
MSProject.Task.SetField(MSPField, value);
此代码将导致异常:
System.Runtime.InteropServices.COMException(0x800A044D):参数值无效.at Microsoft.Office.Interop.MSProject.Task.SetField(PjField FieldID,String Value)
如何解决此问题?
答案 0 :(得分:0)
根据定义,具有公式的字段是只读的。从Text25字段中删除公式或不尝试设置值。
答案 1 :(得分:0)
在执行task.setfield之前,您可以使用以下命令关闭可能已应用于该字段的任何公式:
Application.CustomFieldProperties MSPField, Attribute:=pjFieldAttributeNone, summarycalc:=pjCalcNone