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 として評価されます)。 定数 expression を指定 しない場合、割り当てられた値は 0 (最初のメンバー名の場合) か、直前のメンバー名の値より 1 大 きくなります

注釈

列挙変数は、Enum 型で宣言された 変数 です。 変数とパラメーターの両方を Enum 型で 宣言 できます。 Enum 型の要素 は、Enum ステートメント内の定数値に 初期化 されます。 割り当てられた値は 実行時に変更 することはできません。正の数値と負の数値の両方を含めることができます。 例:

Enum SecurityLevel 
 IllegalEntry = -1 
 SecurityLevel1 = 0 
 SecurityLevel2 = 1 
End Enum 

Enum ステートメント は、モジュール レベルでのみ 表示できます。 Enum 型 定義した後、その型を返す変数、パラメーター、またはプロシージャを 宣言するために使用できます。 Enum 型名をモジュール で修飾できない。

クラス モジュール内 のパブリック 列挙型は 、クラスのメンバーではありません。ただし、これらはタイプ ライブラリに 書き込まれます標準 モジュールで定義 された列挙型 は、タイプ ライブラリには書き込みされません。 同じ名前 の Public 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 のサポートおよびフィードバックを参照してください。