方法 : 列挙型を宣言する

更新 : 2007 年 11 月

列挙型を作成するには、クラスまたはモジュールの宣言セクションで Enum ステートメントを使います。列挙型をメソッド内で宣言することはできません。適切なレベルのアクセスを指定するには、Private、Protected、Friend、または Public を使用します。

Enum 型には、名前、基になる型、およびフィールドのセットがあり、各フィールドは定数を表します。名前は、有効な Visual Basic 2005 修飾子である必要があります。基になる型は、Byte、Short、Long または Integer の整数型のいずれかである必要があります。Integer が既定です。列挙型は常に厳密に型指定され、整数の数値型と互いに置き換えることはできません。

列挙型は、浮動小数点値を持つことはできません。Option Strict On を使用して、列挙型に浮動小数点値を代入すると、コンパイラ エラーになります。Option Strict が Off である場合、値が自動的に Enum 型に変換されます。

名前について、および Imports ステートメントを使用して名前の修飾をしなくて済む方法については、「列挙型と名前の修飾」を参照してください。

列挙型を宣言するには

  1. それぞれで異なる Enum が宣言されている次のコード例のように、コード アクセス レベル、Enum キーワード、および有効な名前が含まれる宣言を記述します。

    Private Enum SampleEnum
            SampleMember
        End Enum
        Public Enum SampleEnum2
            SampleMember
        End Enum
        Protected Enum SampleEnum3
            SampleMember
        End Enum
        Friend Enum SampleEnum4
            SampleMember
        End Enum
        Protected Friend Enum SampleEnum5
            SampleMember
        End Enum
    
  2. 列挙型で定数を定義します。既定では、列挙型の中の最初の定数は 0 に初期化され、それに続く定数は、それぞれ前の定数に 1 を加えた値に初期化されます。たとえば、次の列挙型 Days では、Sunday の値は 0、Monday の値は 1、Tuesday の値は 2 になります。

    Public Enum Days
      Sunday
      Monday
      Tuesday
      Wednesday
      Thursday
      Friday
      Saturday
    End Enum
    
  3. 代入ステートメントを使うと、列挙型の中の定数に明示的に値を代入できます。定数には、負の数を含む任意の整数値を代入できます。たとえば、エラーの状況を表すために、0 よりも小さな値の定数を使うことができます。次の列挙型では、定数 Invalid に値 –1 が明示的に代入されます。また、定数 Sunday に、値 0 が代入されます。これは列挙型の最初の定数であるため、Saturday も値 0 に初期化されます。Monday の値は 1 です (Sunday の値よりも 1 つ多い)。また、Tuesday の値は 2、のように続きます。

    Public Enum WorkDays
      Saturday
      Sunday = 0
      Monday
      Tuesday
      Wednesday
      Thursday
      Friday
      Invalid = -1
    End Enum
    

このコードの例は、IntelliSense コード スニペットとしても利用できます。コード スニペット ピッカーでは、これは [Visual Basic Language] にあります。詳細については、「方法 : コードにスニペットを挿入する (Visual Basic)」を参照してください。

列挙型を明示的に宣言するには

  • 次の構文を使用して宣言を記述します。

    Public Enum MyEnum As Byte
      Zero
      One
      Two
    End Enum
    

参照

処理手順

方法 : 列挙型のメンバを参照する

方法 : Visual Basic で列挙型を反復処理する

方法 : 列挙値に関連付けられている文字列を確認する

概念

列挙型と名前の修飾

列挙型を使用する状況

組み込み定数と組み込み列挙型

定数とリテラルのデータ型

その他の技術情報

Visual Basic の定数