Task.SetField 方法 (Project)

设置指定的任务自定义域的值。

语法

expression. SetField( _FieldID_, _Value_ )

表达 一个代表 Task 对象的变量。

参数

名称 必需/可选 数据类型 说明
FieldID 必需 Long 对于本地自定义字段,可以是任务自定义字段的 PjField 常量之一。 对于企业自定义字段,使用 FieldNameToFieldConstant 方法来获取 FieldID
Value 必需 String 该域的值。

备注

您可以通过 ProjectSummaryTask 属性来访问项目自定义域。

示例

下面的示例使用 SetField 方法和 FieldNameToFieldConstant 以及 GetField 方法和 FieldConstantToFieldName 的方法。

  1. 若要使用本示例,请使用 Project Web App 创建一个名为 "TestEntProjText" 的企业项目文本自定义域。

  2. 以使其包括新的自定义字段,使用 Project Server 配置文件,重新启动项目专业人员。

  3. 使用 "项目信息" 对话框创建一个项目,并为 "TestEntProjText" 域指定一个值。

  4. TestEnterpriseProjectCF 宏,使用 FieldNameToFieldConstant 方法来找到 projectField 号,例如,190873618。

  5. 宏在消息框中,通过使用 GetField 方法将显示编号和文本值。

  6. 宏通过使用 FieldConstantToFieldName 方法来获取字段名称、 使用 SetField 方法,设置一个新值,然后在另一个消息框中显示的字段名称和新值。

Sub TestEnterpriseProjectCF() 
    Dim projectField As Long 
    Dim projectFieldName As String 
    Dim message As String 
 
    projectField = FieldNameToFieldConstant("TestEntProjText", pjProject) 
 
    ' Show the enterprise project field number and old value. 
    message = "Enterprise project field number: " & projectField & vbCrLf 
    MsgBox message & ActiveProject.ProjectSummaryTask.GetField(projectField) 
 
    ActiveProject.ProjectSummaryTask.SetField FieldID:=projectField, Value:="This is a new value." 
 
    ' For a demonstration, get the field name from the field number, and verify the new value. 
    projectFieldName = FieldConstantToFieldName(projectField) 
    message = "New value for field: " & projectFieldName & vbCrLf 
    MsgBox message & ActiveProject.ProjectSummaryTask.GetField(projectField) 
End Sub

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。