Метод Task.SetField (Project)

Задает значение указанного настраиваемого поля задачи.

Синтаксис

выражение. SetField( _FieldID_, _Value_ )

Выражение Переменная, представляющая объект Task .

Параметры

Имя Обязательный или необязательный Тип данных Описание
FieldID Обязательный Long Для локального настраиваемого поля может быть одной из констант PjField для настраиваемых полей задачи. Для корпоративного настраиваемого поля используйте метод FieldNameToFieldConstant , чтобы получить FieldID.
Value (Значение) Обязательный String Значение поля.

Замечания

Доступ к настраиваемым полям проекта можно получить через свойство ProjectSummaryTask .

Пример

В следующем примере используется метод SetField и метод GetField вместе с методами FieldNameToFieldConstant и FieldConstantToFieldName .

  1. Чтобы использовать пример, используйте Project Web App для создания настраиваемого поля текста корпоративного проекта с именем TestEntProjText.

  2. Перезапустите Project профессиональный с профилем 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 и обратная связь.