列挙型変数(Enum ステートメント)
列挙型変数を使う
列挙型変数を使用するには、Enum ステートメントを使って、宣言をします。
[ Public | Private ] Enum enumname
membername1 [ = long1 ]
membername2 [ = long2 ]
membername3 [ = long3 ]
・・・
End Enum
引数・戻り値
- enumname ・・・ 定義する列挙型変数の名前を指定します(省略不可)。
- membername1,2,3… ・・・ 列挙型 enumname のメンバーとなる定数の名前を指定します(複数指定可、省略不可)。
- long1,2,3… ・・・ 長整数型(Long)の値で指定します。先頭の定数の値(long1)の指定を省略した場合、その値は、0 となります。2 番目以降の定数の値(long2,3,…)の指定を省略した場合、その値は、「直前の membername の値 + 1 」となります。
キーワード Public を指定するとその定数は、すべてのモジュールのどのプロシージャからも参照できます。一方、キーワード Private を指定すると宣言が行われたモジュール内でしか参照できなくなります。Public、Private を省略した場合、Public を指定したものとみなされます。
Enum ステートメント 使用例
サンプルVBAソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Enum RegData ID = 1 Name = 2 Pref '値の指定を省略すると、ここでは「3」が割り当てられます。 End Enum Sub Sample_Enum() Dim str As String Dim i As Long For i = 1 To Range("A1").CurrentRegion.Rows.Count str = str & Cells(i, RegData.ID) & vbTab _ & Cells(i, RegData.Name) & vbTab _ & Cells(i, RegData.Pref) & vbCrLf Next i MsgBox str End Sub |
実行結果
関連記事
-
-
式の値に応じて多分岐を行う(Switch 関数)
Switch 関数 の使い方 Switch 関数は、「式・値」を対にして指定して …
-
-
インプットボックスを表示する(InputBox関数・InputBoxメソッド)
「InputBox関数」と「InputBoxメソッド」の違い 「InputBox …
-
-
VBA の演算子(演算子の優先順位)
演算子の優先順位 演算子の優先順位とは、1つの式の中に演算子が複数ある場合、どの …
-
-
オートシェイプの種類を表す定数(MsoAutoShapeType 列挙型)
MsoAutoShapeType 列挙型 オートシェイプオブジェクトの図形の種類 …
-
-
コレクション(Collection)オブジェクト「連想配列」
コレクション(Collection)オブジェクトの使い方 【書式】 Dim my …
-
-
日付時刻:日付・時刻の間隔を取得( DateDiff 関数 )
DateDiff 関数の使い方 【書式】 result = DateDiff ( …
-
-
文字列:文字を指定数並べた文字列を返す(String 関数)
String 関数 【書式】 result = String ( number, …
-
-
XlThemeColor 列挙型
XlThemeColor 列挙 定数 値 内容 xlThemeColorDark …
-
-
Array 関数(バリアント型の配列を作成)
Array 関数の使い方 【書式】 myArray = Array ( elem …
-
-
変数がオブジェクト型かどうかをチェックする( IsObject 関数 )
IsObject 関数の使い方 【書式】 result = IsObject ( …