列挙型変数(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 |
実行結果
関連記事
-
-
対象のオブジェクトをクリアする(Clear メソッド)
Clear メソッド 対象となるオブジェクト全体をクリアします。Range オブ …
-
-
乱数ジェネレータを初期化 (乱数系列を再設定) する(Randomize ステートメント)
Randomize ステートメントの使い方 Rnd 関数 を使用する前に使用しま …
-
-
VBA の演算子(演算子の優先順位)
演算子の優先順位 演算子の優先順位とは、1つの式の中に演算子が複数ある場合、どの …
-
-
変数がEmpty 値かどうかをチェックする( IsEmpty 関数 )
IsEmpty 関数の使い方 【書式】 result = IsEmpty ( e …
-
-
書式を変換(Format 関数)
Format 関数の使い方 【書式】 result = Format ( exp …
-
-
日付時刻:時・分・秒を取得(Hour、Minute、Second 関数)
日付時刻から時・分・秒を取得する関数 【書式】 time_hour = Hour …
-
-
VBA の演算子(論理演算子:And、Eqv、Imp、Not、Or、Xor)
論理演算子 論理演算を行うときに使用する演算子で、以下の 6 種類があります。 …
-
-
文字列:文字列左から指定文字数取得(Left 関数,LeftB 関数)
Left 関数・LeftB 関数 の使い方 【書式】 result_left = …
-
-
指定した数値を文字列に変換する(Str 関数)
Str 関数 の使い方 Str 関数は、数値・数式を文字列に変換して返す関数です …
-
-
配列(宣言・要素数の変更について)
配列の宣言 【書式】※ 配列の宣言 <Type 型の静的配列(固定長配列)の宣言 …
