LBound 関数は配列の指定された次元で使用できる添字の下限を整数値で返します。
UBound 関数は配列の指定された次元で使用できる添字の上限を整数値で返します。
LBound、UBound関数の使用方法
引数名 | 省略 | 説明 |
---|---|---|
ArrayName | × | 配列変数の名前を指定します。 |
Dimension | ○ | 添字の下限・上限を調べたい配列の次元を整数値で指定します。 省略すると、1 が指定されたものと見なされます。 |
LBound、UBound関数の使用例
2次元配列における各次元の添え字上限・下限を調べる例です。
Sub sample_ef042_01()
Dim Var(3 To 5, -2 To 1) As Integer
Dim i As Integer
Dim j As Integer
Dim Count As Integer
'第2引数を省略すると1次元の値を表示します。
Debug.Print "1次元 添字下限:" & LBound(Var)
Debug.Print "1次元 添字上限:" & UBound(Var)
'2次元
Debug.Print "2次元 添字下限:" & LBound(Var, 2)
Debug.Print "2次元 添字上限:" & UBound(Var, 2)
Count = 0
'配列にデータを格納する例。配列に1からの連番を格納。
For i = LBound(Var) To UBound(Var)
For j = LBound(Var, 2) To UBound(Var, 2)
Count = Count + 1
Var(i, j) = Count
Next j
Next i
'配列の要素をすべて表示
For i = LBound(Var) To UBound(Var)
For j = LBound(Var, 2) To UBound(Var, 2)
Debug.Print "Var(" & i & "," & Str(j) & ") = " & Var(i, j)
Next j
Next i
End Sub