列挙型とは”複数の定数のまとまりに名前を付けたモノ”です。
つまり、列挙型は”関係性に共通点のある複数の定数を扱いたいとき”などに用いるということです。
そんな列挙型の解説をさっそくしていきます。
列挙型の記述の方法
ここでは「列挙型の宣言」と「列挙型の参照」の記述について書いていきます。
列挙型の宣言の記述
列挙型の宣言の仕方は下の通りです。
[宣言レベル] Enum 列挙型の名前
メンバー名1 [ 値(整数のみ) ]
メンバー名2 [ 値(整数のみ) ]
…
End Enum
・宣言レベル:「Public」「Private」のどちらかを記述する。※省略可。
Publicならすべてのモジュールで、Privateなら宣言したモジュール内のみで使うことができる。
・列挙型の名前:定数のまとまり(グループ)の名前
・メンバー名:メンバーとする要素の名前
・値:各メンバーに割り当てる整数。※省略可(省略したら、0から1ずつ加算されて割り当てられる)
列挙型の参照の記述
そして、上で宣言した列挙型を参照する記述は下の通りです。
[ 列挙型の名前 ] .メンバー名
列挙型の参照はメンバー名のみの記述でできます。
ですが、”列挙型の名前”に「.(ピリオド)」を入力すると、自動メンバーの表示され、そこから選択することができます。
列挙型の参考コード
では、簡単なコードで解説していきます。
ここでのコードは下の画像の表データをイミディエイトに表示するのが処理内容です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
Enum 個人情報 姓 = 2 名 = 3 住所 = 4 電話番号 = 5 End Enum Sub Sample1() Dim i As Long For i = 3 To 5 '--- 補足:Cells(行, 列) --- Debug.Print Cells(i, 個人情報.姓).Value Debug.Print Cells(i, 個人情報.名).Value Debug.Print Cells(i, 個人情報.住所).Value Debug.Print Cells(i, 個人情報.電話番号).Value Next End Sub |
2行目~5行目が個人情報という列挙型のメンバーになります。
そして、For文の処理では1行ずつにデータが入っているので行は1ずつカウントさせ、列は列挙型のメンバーを使って指定しています。
※14行目の「個人情報.姓」というメンバーを使った場合、列挙型宣言時の2行目で指定した“2”という整数が戻り値になります。
今回は1種類でかつメンバーの少ない列挙型だったので、大量に定数がある場合よりも列挙型のメリットを得にくくなっています。
ですが、「Cellsステートメントで何のデータを取得しようとしているか」ぐらいは一目で理解できるようになっているかと思います。
1位 | 2位 | 3位 |
---|---|---|
Excel VBA 脱初心者のための集中講座 | パーフェクトExcel VBA | ExcelVBA 実戦のための技術 |
初心者~中級者 | 中級者 | 初心者~中級者 |
【初心者が手に取るべき参考書】 ・「書籍+動画」で圧倒的に理解しやすい入門書になっている。 ・丁寧で詳しい解説でボリューム感がある。 | 【より深い理解をしたい方にお勧めな参考書】 ・テーマに対して丁寧な解説・適度な深さで解説されている。 ・幅広くテーマを扱っていることから、基礎知識をあらかた網羅できる。 | 【入門書と一緒に買うべき参考書】 ・1つ1つのテーマを経験豊富なエンジニア視点で解説してくれている。 ・実践的で効果的なコードの書き方が理解できる。 |
【読んでみた一言】 正直、入門書はコレ一冊でいいかも。あとは中級者用の参考書に進むべし。 | 【読んでみた一言】 深く書かれているが、少々専門的に書かれていることから、読む前に数冊の入門書を読破したほうが良い。 | 【読んでみた一言】 基礎知識を持っている人が次のレベルに達するきっかけを与えてくれる参考書である。 |
スポンサーリンク