【VBA/マクロ】配列の使い方・宣言方法

ExcelのVBA(マクロ)での配列の使い方や宣言方法についてまとめました。

配列の使い方

配列(Array)とは、「データを一列に並べたもの」で、大量のデータを扱う場合によく用いられます。

「配列」の詳細についてはこちら
1 【配列とは】仕組み・変数との違い

VBAでは、「固定長配列」「動的配列」の2種類を宣言できます。

種類 説明 宣言例
固定長配列 要素数と次元数が固定された配列 Dim 配列名(添字の上限値) As データ型名
動的配列 要素数と次元数を途中で変更可能な配列 Dim 配列名() As データ型名

サンプルコード

サンプルプログラムのソースコードです。

Sub test()

    '文字列型の配列を宣言(要素数は3で固定)
    Dim member(2) As String
    
    '0番目要素に文字列を代入
    member(0) = "アベンジャー"
    
    '1番目要素に文字列を代入
    member(1) = "バゼット"
    
    '2番目要素に文字列を代入
    member(2) = "カレン"
    
    '1番目要素を取り出して表示'
    MsgBox member(1) 'メッセージボックスに「バゼット」と表示'

End Sub

「Dim member(2) As String」で固定長配列を宣言しています。
添字の最大値が「2」なので、要素番号0、1、2まで扱えます。
よって、要素数は3となります。

Array関数を使うと、次のようにコンパクトに配列に値をセットすることができます。

Sub test()

    '変数を宣言
    Dim member As Variant
    
    '変数の値に配列をセット
    member = Array("アベンジャー", "バゼット", "カレン")
    
    '1番目要素を取り出して表示'
    MsgBox member(1) 'メッセージボックスに「バゼット」と表示'

End Sub

Variant型変数の値として、配列を格納することができます。
その場合、Array関数を使って配列要素をまとめて指定することが可能です。
(※Variant型の配列ではなく、配列を値として持つバリアント型変数であることに注意)

関連記事
1 【Excel/VBA】マクロ入門
関連記事