Enum ステートメント
列挙の型を宣言します。
構文
[ パブリック | Private ] Enumnamemembername [= constantexpression ] membername [= constantexpression ] . .End Enum
Enum ステートメントには、次の指定項目があります。
パーツ | 説明 |
---|---|
Public | オプション。 Enum 型がプロジェクト全体で認識できることを指定します。 Enum 型は既定で Public です。 |
Private | オプション。 Enum 型が、それが存在するモジュールの中でのみ認識されることを指定します。 |
name | 必須です。 Enum 型の名前です。 name は、有効な Visual Basic 識別子である必要があり、Enum 型の変数またはパラメーターを宣言するときに型として指定されます。 |
membername | 必須です。 有効な Visual Basic 識別子であり、Enum 型の構成要素がそれによって認識される名前を指定します。 |
constantexpression | オプション。 要素の値です (Long として評価されます)。 constantexpression が指定されていない場合、割り当てられた値は 0 (最初のメンバー名の場合) か、直前のメンバー名の値より 1 大きい値です。 |
注釈
列挙変数は、 Enum 型で宣言された変数です。 変数とパラメーターの両方を Enum 型で宣言できます。 Enum 型の要素は、Enum ステートメント内の定数値に初期化されます。 割り当てられた値は 実行時 に変更できません。正と負の両方の数値を含めることができます。 例:
Enum SecurityLevel
IllegalEntry = -1
SecurityLevel1 = 0
SecurityLevel2 = 1
End Enum
Enum ステートメントは、モジュール レベルでのみ表示できます。 Enum 型を定義した後、その型を返す変数、パラメーター、またはプロシージャを宣言するために使用できます。 モジュール名で Enum 型名を修飾することはできません。
クラス モジュール内のパブリック列挙型は、 クラスのメンバーではありません。ただし、これらはタイプ ライブラリに書き込まれます。 標準モジュールで定義されている列挙型は、タイプ ライブラリに書き込まれません。 同じ名前のパブリック列挙型は、同じ名前空間を共有するため、標準モジュールとクラス モジュールの両方で定義することはできません。 異なるタイプ ライブラリ内の 2 つの Enum 型の名前は同じですが、要素が異なる場合、型の変数への参照は、 参照の優先順位が高いタイプ ライブラリによって異なります。
Enum 型を With ブロックのターゲットとして使用することはできません。
例
次の例では、名前付き定数のコレクションを定義するために Enum ステートメントを使用しています。 この場合の定数は、データベースのデータ入力フォームの設計で選択できる色です。
Public Enum InterfaceColors
icMistyRose = &HE1E4FF&
icSlateGray = &H908070&
icDodgerBlue = &HFF901E&
icDeepSkyBlue = &HFFBF00&
icSpringGreen = &H7FFF00&
icForestGreen = &H228B22&
icGoldenrod = &H20A5DA&
icFirebrick = &H2222B2&
End Enum
関連項目
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。