【VBA】列挙型の使い方【宣言・参照の記述を解説します】

VBA

列挙型とは”複数の定数のまとまりに名前を付けたモノ”です。

つまり、列挙型は関係性に共通点のある複数の定数を扱いたいときなどに用いるということです。

例えば、「表の列番号」「店舗番号」「色指定のパターン」などを同じ列挙型にしておくと、開発時に指定しやすかったり、コードの可読性が上がるというメリットがあったりする。

 

そんな列挙型の解説をさっそくしていきます。

スポンサーリンク



列挙型の記述の方法

ここでは「列挙型の宣言」と「列挙型の参照」の記述について書いていきます。

 

列挙型の宣言の記述

列挙型の宣言の仕方は下の通りです。

[宣言レベル] Enum 列挙型の名前

メンバー名1 [ 値(整数のみ) ]

メンバー名2 [ 値(整数のみ) ]

End Enum

宣言レベル:「Public」「Private」のどちらかを記述する。※省略可。

Publicならすべてのモジュールで、Privateなら宣言したモジュール内のみで使うことができる。

列挙型の名前:定数のまとまり(グループ)の名前

メンバー名:メンバーとする要素の名前

:各メンバーに割り当てる整数。※省略可(省略したら、0から1ずつ加算されて割り当てられる)

 

列挙型の参照の記述

そして、上で宣言した列挙型を参照する記述は下の通りです。

[ 列挙型の名前 ] .メンバー名

 

列挙型の参照はメンバー名のみの記述でできます。

ですが、”列挙型の名前”に「.(ピリオド)」を入力すると自動メンバーの表示され、そこから選択することができます

列挙型の参考コード

では、簡単なコードで解説していきます。

ここでのコードは下の画像の表データをイミディエイトに表示するのが処理内容です。

 

2行目~5行目が個人情報という列挙型のメンバーになります。

 

そして、For文の処理では1行ずつにデータが入っているので行は1ずつカウントさせ、列は列挙型のメンバーを使って指定しています。

※14行目の「個人情報.姓」というメンバーを使った場合、列挙型宣言時の2行目で指定した“2”という整数が戻り値になります。

 

今回は1種類でかつメンバーの少ない列挙型だったので、大量に定数がある場合よりも列挙型のメリットを得にくくなっています。

ですが、「Cellsステートメントで何のデータを取得しようとしているか」ぐらいは一目で理解できるようになっているかと思います。

スポンサーリンク

コメント