Application.FieldConstantToFieldName メソッド (Project)
指定されたフィールド定数のユーザー設定フィールド名を返します。
構文
式。 FieldConstantToFieldName
( _Field_
)
式Application オブジェクトを表す変数。
パラメーター
名前 | 必須 / オプション | データ型 | 説明 |
---|---|---|---|
Field | 必須 | 長整数型 (Long) | ユーザー設定フィールドの数値の定数です。 PjField 定数、ローカルのユーザー設定フィールドまたはエンタープライズ ユーザー設定フィールドのもう 1 つの Long 値のいずれかできます。 |
戻り値
String
注釈
フィールド引数にローカルのユーザー設定フィールドがある場合は、 PjField 定数のいずれかを使用できます。 フィールドは、エンタープライズ ユーザー設定フィールドである場合、無制限の数のエンタープライズ ユーザー設定フィールドが存在することができますので PjField 定数は一致しません。
注:
[!メモ] 使いやすさとパフォーマンスの点から、エンタープライズ ユーザー設定フィールドの数は数百個までに制限してください。
ProjectSummaryTask プロパティを通じて、プロジェクトのユーザー設定フィールドにアクセスできます。
例
次の使用例は、 FieldNameToFieldConstant メソッドと FieldConstantToFieldName メソッドの違いを示しています。
To use the example, use Project Web App to create an enterprise project text custom field named TestEntProjText.
新しいユーザー設定フィールドが含まれるように、プロジェクトのサーバー プロファイルを使用してプロジェクトを再起動します。
Create a project with some value for the TestEntProjText field, by using the Project Information dialog box.
TestEnterpriseProjectCF マクロは、190873618、projectField 番号を検索する FieldNameToFieldConstant メソッドを使用します。
マクロは、 GetField メソッドを使用して、メッセージ ボックスで、番号とテキストの値を示しています。
マクロは、 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, 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
次の使用例は、 pjTaskStart 、 pjTaskStartText 、および同様のタスク フィールドの間で名前の違いを示しています。
注:
pjTask*Text フィールド (pjTaskStartText など) は Project の新しいフィールドです。 Those fields are used to get data for dates of both automatically and manually scheduled tasks. For example, the Start column in a Gantt chart contains String data for dates, not Variant data. ユーザー設定フィールドの数式では pjTaskDuration などのフィールドを使用しますが、列見出しには使用しないでください。
開始、 終了、 期間など、タスク ビュー内の列には、自動スケジュールと手動でスケジュールされたタスクの 文字列 データが含まれています。 PjTaskDuration の列見出しがないために、[ 期間] 列は 文字列 データをのみ使用できます。
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
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。