Excel VBA 入門講座

Excel VBA Tips Excel VBA 入門講座

2次元配列

2次元配列は表形式(行列)で値を取り扱う場合に主に使用します。

構文
Dim varname ( subscripts ) As type
varname配列の名前
subscripts配列の要素数(多次元の場合はカンマで区切る)
typeデータタイプ

文字列型の2次元配列では以下のように宣言します。rows="行"、clos="列"のイメージです。


    Dim strArray( rows , cols ) As String

以下では【Sheet1】のセルA1:F3に格納された値を取得して2次元配列に格納しています。

セルの値
2次元配列

Sub SetArray()

    Dim strArray(2, 5) As String

    For i = 0 To 2   '0~2の計3回ループする
        For j = 0 To 5   '0~5の計6回ループする
            strArray(i, j) = Worksheets("Sheet1").Cells(i, j).Text
        Next

    Next

    For i = 0 To 2
        For j = 0 To 5
            Debug.Print strArray(i, j)
        Next
    Next

End Sub

UBound()関数を使用すると2次元配列の要素数を取得出来るのでFor文で要素の上限値を指定しなくてもよくなります。


Sub SetArray()

    Dim strArray(2, 5) As String

    For i = 0 To UBound(strArray, 1)   '0~2の計3回ループする
        For j = 0 To UBound(strArray, 2)   '0~5の計6回ループする
            strArray(i, j) = Worksheets("Sheet1").Cells(i, j).Text
        Next
    Next

    For i = 0 To UBound(strArray, 1)
        For j = 0 To UBound(strArray, 2)
            Debug.Print strArray(i, j)
        Next
    Next
    
End Sub
Excel VBA Tips Excel VBA 入門講座 TOP