この記事を読むのに必要な時間は約 4 分です。

 

VBAで配列を使うことってありますよね。

 

単純に値を格納する方法以外に、ある関数を使って入れることができます。

 

複数の値を一度に格納出来て便利なので、もしも知らない場合はぜひ参考にしてみてくださいね。

VBAで、配列に直接値を格納する

配列に直接値を入れるなら、

のように書きます。

 

サンプルプログラムはこんな感じ。
直接格納するので、あえて次のように書いていますが、For文などでループさせて値を入れることが多いです。

 

実行すると、下図のように配列に格納されている値がセルに入りました。

VBA_配列に値を格納する方法

VBAで、Arrayを使って配列に値を格納する

Arrayを使うと、1度でまとめて格納できます。

 

ここで注意したいのは、Variant型で宣言すること。
格納する中身の値はString型ですが、As String としてしまうと「型が一致しません。」のエラーになります。

 

なのでVariant型で宣言する必要があります。

 

実行してみると、配列に格納された値が次のようにセルに入ります。

VBA_配列に値を格納する方法

VBAで、Split関数を使って値を格納する

Split関数を使って配列に値を格納する方法です。

 

とても便利なので、ぜひ知っておいてほしいやり方の1つです。

 

カンマ区切りのデータであるCSV、タブ区切りのデータであるTSVなど、いろんなデータがありますよね。

 

1行ずつ読み取って処理するとき、Split関数で区切り文字を指定してVariant型の変数に入れると、サクッと配列に格納することができるんです!

 

 

実行すると、下図のように配列の値がセルに格納されます。

VBA_配列に値を格納する方法

まとめ:VBAで配列に値を格納する方法3つ

VBAで配列に値を格納する方法を紹介してきました。

 

単純に値を格納する以外に、Array関数、Split関数を使う方法もあると知ってほしかったわけです。

 

CSVやTSVのデータを配列に入れるなら、Split関数は非常に便利で、初めて知った時は感動しました(笑)

 

配列の使い方、参考になればと思います。

 

最後までお読みいただき、ありがとうございました。