
Excel VBAの 2次元配列は、2次元のデータを効果的に扱うためのデータ構造です。1次元配列が1列のデータを格納するのに対して、2次元配列は行と列から成る表形式のデータを格納します。使い方や、注意点やサンプルコードを紹介します。
📌 「これ、自動化できたらラクなのに…」と思ったこと、ありませんか?
実はその作業、Excelマクロで簡単に自動化できるかもしれません。
「でもマクロって難しそう…」という方のために、完全初心者向けの入門記事をご用意しました!
👇実務で“そのまま使える”テンプレ付きで、コピペするだけ!
初心者向けエクセルマクロの作り方を解説|コピペOK実務テンプレ付き
Excel VBA 2次元配列とは
学校の教室に座る生徒たちがいます。これを1次元配列だと思います。1次元配列は、横一列に座る生徒たちのリストと考えることができます。例えば、1-A、1-B、1-Cといった感じですね。
では、2次元配列はどうでしょうか?これは、学校の教室の座席表と考えることができます。横にも縦にも並んでいるんです。例えば、1-A、1-B、1-Cが横に座って、2-A、2-B、2-Cがその下に縦に座っている感じです。
もし、ある生徒の席を知りたい場合、1-A、2-Bのように座席の行番号と列番号を指定すれば、その生徒の席を特定できます。これが2次元配列のイメージです。座席表を使って、縦横の組み合わせで生徒を特定できます。
Excel VBA 2次元配列の利用
以下のようなシーンで利用されます。
・データベースやスプレッドシートのテーブル形式のデータを効率的に取り扱いたい場合。
・行と列の関係性があるデータをプログラム内で表現したい場合。
・行列の要素にアクセスすることで、複雑なデータ処理をシンプルに行いたい場合。
配列のサイズを事前に宣言する場合、データの量を正確に知っている必要があります。
Excel VBA 2次元配列サンプルコード
自分の実力を客観的にチェックしたい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集をご用意しました。
Option Explicit
Sub SampleArray()
Dim myArray(1 To 3, 1 To 2) As Variant
Dim i As Integer, j As Integer
' データの格納
myArray(1, 1) = "A"
myArray(1, 2) = 10
myArray(2, 1) = "B"
myArray(2, 2) = 20
myArray(3, 1) = "C"
myArray(3, 2) = 30
' データの表示
For i = 1 To 3
For j = 1 To 2
Debug.Print myArray(i, j)
Next j
Next i
End Sub
サンプルコードは、3行2列の2次元配列に文字列と数値を格納し、データをループ(繰り返し)で表示しています。
「Excel VBAで自動化するコードのベースが習得できる解説書」
Excel VBAエキスパートベーシックとスタンダード、どちらを選べばいいか判断が難しい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集を用意しました。