【EXCEL VBA】列挙型変数を使うと定数の指定が簡単になるよ Enumステートメント

スポンサーリンク

はじめに

ひらちんです。

EXCELの表をVBAで扱うとき、列番号を指定する必要があることってよくありますよね?

Enumステートメントで列挙型変数を作成するとコードの中で指定が簡単にできて便利です。

スポンサーリンク

Enumステートメント

構文

Type 変数名

 変数名A As String

変数名B As Long

   ・

   ・

End Type

変数A・変数名Bの部分は、たくさん増やすことが出来ます。

例えば次のような表があったとします。

次のコードは、列挙型変数に列名を付けてその列番号を設定しているコードです。

'列挙型変数を宣言する
Enum myCol
    商品id = 1
    商品名 = 2
    数量 = 3
    単価 = 4
End Enum

Sub sample()

    '順番に情報を出力する
    Dim i As Long
    For i = 2 To 6
        Debug.Print "商品id:" & Cells(i, myCol.商品id)
        Debug.Print "商品名:" & Cells(i, myCol.商品名)
        Debug.Print "数量:" & Cells(i, myCol.数量)
        Debug.Print "単価:" & Cells(i, myCol.単価)
    Next
 
End Sub

設定した、列番号を使って、表の情報をイミディエイトウィンドウに出力しています。

※ユーザー定義変数は、宣言セクションで宣言してくださいね。

うまく出来ましたね(^o^)

途中、myColの後でピリオドを入力することで候補が出てくる様子も確認出来ました。

このように列名を列挙型変数を指定することによって、コードを書きながら簡単に列を把握することが出来ます(^o^)

コメント

タイトルとURLをコピーしました