Application.FieldConstantToFieldName-Methode (Project)

Gibt ein benutzerdefiniertes Feld für die angegebene Feldkonstante zurück.

Syntax

Ausdruck. FieldConstantToFieldName( _Field_ )

expression Eine Variable, die ein Application-Objekt darstellt.

Parameter

Name Erforderlich/Optional Datentyp Beschreibung
Feld Erforderlich Long Die numerische Konstante für das benutzerdefinierte Feld. Dies kann eine der PjField -Konstanten für lokale benutzerdefinierte Felder oder einer anderen Long -Wert für benutzerdefinierte Enterprise-Felder sein.

Rückgabewert

String

HinwBemerkungeneise

Wenn das Argument Feld ein lokales benutzerdefiniertes Feld ist, können Sie eine der PjField -Konstanten verwenden. Wenn das Feld ein benutzerdefiniertes Enterprise-Feld ist, entspricht es, da eine unbegrenzte Anzahl von benutzerdefinierten Enterprise-Felder kann keine PjField -Konstante.

Hinweis

[!HINWEIS] Aus Gründen der Handhabbarkeit und Leistung sollte die Anzahl der benutzerdefinierten Enterprise-Felder auf ein paar hundert oder weniger beschränkt werden.

Sie können benutzerdefinierte Projektfelder über ProjectSummaryTask -Eigenschaft zugreifen.

Beispiel

Das folgende Beispiel zeigt den Unterschied zwischen den Methoden FieldNameToFieldConstant und FieldConstantToFieldName:

  1. Um das Beispiel verwenden zu können, verwenden Sie Project Web App, um ein benutzerdefiniertes "Enterprise-Projekt Text"-Feld namens TestEntProjText zu erstellen.

  2. Starten Sie Project mit einem Project Server-Profil neu, sodass das neue benutzerdefinierte Feld enthalten.

  3. Erstellen Sie ein Projekt mit einem Wert für das Feld TestEntProjText, indem Sie das Dialogfeld Projektinformationen verwenden.

  4. Das Makro TestEnterpriseProjectCF verwendet die FieldNameToFieldConstant -Methode zum Ermitteln ProjectField Anzahl 190873618.

  5. Das Makro zeigt den Zahlen- und Textwert in einem Meldungsfeld mit der GetField -Methode.

  6. Das Makro ruft den Feldnamen mithilfe der FieldConstantToFieldName -Methode, einen neuen Wert mithilfe der SetField -Methode festgelegt und zeigt dann die Feldnamen und einen neuen Wert in einem weiteren Meldungsfeld.

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, show 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

Das folgende Beispiel zeigt den Unterschied zwischen der Felder PjTaskStart, PjTaskStartText und ähnlicher Vorgangsfelder Namen.

Hinweis

[!HINWEIS] Die PjTask * Text Felder wie PjTaskStartText, sind neu in Project. Diese Felder dienen zum Abrufen von Daten für die Datumsangaben der beiden automatisch und manuell geplante Vorgänge. Beispielsweise enthält die Spalte Start in einem Gantt-Diagramm Zeichenfolgedaten gültig für Daten, die nicht Variant Daten. Verwenden Sie Felder wie pjTaskDuration in benutzerdefinierten Feldformeln, aber nicht in Spaltenüberschriften.

Spalten in Vorgangsansichten für Starten, Beenden, Dauer und usw., enthält Zeichenfolgendaten für automatisch geplant und manuell geplante Vorgänge. Spalte Duration können nur Zeichenfolgedaten gültig, damit keine Spaltenüberschrift für "pjTaskDuration" vorhanden ist.

Sub TryNewTaskConstants() 
      ' The pj*Text fields return data for the date columns of automatically and manually scheduled tasks. 
    ' For example, FieldConstantToFieldName(pjTaskStartText) returns the column name for Start date strings. 
 
    Debug.Print "pjTaskStart returns: " & FieldConstantToFieldName(pjTaskStart) 
    Debug.Print "pjTaskStartText returns: " & FieldConstantToFieldName(pjTaskStartText) _ 
        & vbCrLf 
 
    Debug.Print "pjTaskFinish returns: " & FieldConstantToFieldName(pjTaskFinish) 
    Debug.Print "pjTaskFinishText returns: " & FieldConstantToFieldName(pjTaskFinishText) _ 
        & vbCrLf 
 
    Debug.Print "pjTaskDuration returns: " & FieldConstantToFieldName(pjTaskDuration) 
    Debug.Print "pjTaskDurationText returns: " & FieldConstantToFieldName(pjTaskDurationText) _ 
        & vbCrLf 
 
    Debug.Print "pjTaskBaselineStart returns: " & FieldConstantToFieldName(pjTaskBaselineStart) 
    Debug.Print "pjTaskBaselineStartText returns: " & FieldConstantToFieldName(pjTaskBaselineStartText) 
End Sub

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.