配列の指定された次元で使用できる最小の添字を、長整数型 (Long)の値で返します。
-
- LBound(arrayname[, dimension])
- LBound 関数の構文は、次の指定項目から構成されます。
-
-
必ず指定します。配列変数の名前です。変数の標準的な名前付け規則に従って指定します。
-
省略可能です。バリアント型 (内部処理形式 Long の Variant) の値を指定します。添字の最小値を調べる対象となる配列の次元を示す整数を指定します。最初の次元なら
1、2 番目の次元なら 2、というように指定します。引数 dimension を省略すると、1 が指定されたものと見なされます。
-
-
は、UBound 関数と組み合わせて、配列のサイズを調べるために使います。配列の添字の最大値を調べるには、UBound 関数を使います。
-
、LBound 関数からは下の表のような値が返ります。
- Dim A(1 To 100, 0 To 3, -3 To 4)
- ステートメント 戻り値
- LBound(A, 1) 1
- LBound(A, 2) 0
- LBound(A, 3) -3
-
この値は、Option Base ステートメントの設定によって決まります。Array 関数で作成された配列の添字は、0 から始まり、Option
Base ステートメントの影響は受けません。
- Dim、Private、Public、ReDim、Static のいずれかのステートメントで To 節を使って配列の次元を設定すると、添字の最小値に任意の整数値を指定できます。
|
次の例では、LBound 関数を使って、配列内の指定された次元の添字として使える最小値を求めます。配列の添字の既定の最小値 0 を変更するには、Option
Base ステートメントを使います。 |
Option Explicit
Dim Lower
' 配列変数を宣言します。
Dim MyArray(1 To 10, 5 To 15, 10 To 20)
Dim AnyArray(10)
Lower = LBound(MyArray, 1) ' 1 を返します。
Lower = LBound(MyArray, 3) ' 10 を返します。
Lower = LBound(AnyArray)
' Option Base の設定に応じて、0 または 1 を返します。
|
|
|
|
配列の指定された次元で使用できる添字の最大値を、長整数型 (Long) の値で返します。
-
- UBound(arrayname[, dimension])
- UBound 関数の構文は、次の指定項目から構成されます。
-
-
必ず指定します。配列変数の名前です。変数の標準的な名前付け規則に従って指定します。
-
省略可能です。バリアント型 (内部処理形式 Long の Variant) の値を指定します。添字の最大値を調べる対象となる配列の次元を示す整数を指定します。最初の次元なら
1、2 番目の次元なら 2、というように指定します。引数 dimension を省略すると、1 が指定されたものと見なされます。
-
-
は、LBound 関数と組み合わせて、配列のサイズを調べるために使います。配列の添字の最小値を調べるには、LBound 関数を使います。
-
、UBound 関数からは下の表のような値が返ります。
- Dim A(1 To 100, 0 To 3, -3 To 4)
- ステートメント 戻り値
- UBound(A, 1) 100
- UBound(A, 2) 3
- UBound(A, 3) 4
|
次の例では、UBound 関数を使って、配列の指定された次元の添字として使える最大値を求めます。 |
Option Explicit
Dim Upper
Dim MyArray(1 To 10, 5 To 15, 10 To 20)
' 配列変数を宣言します。
Dim AnyArray(10)
Upper = UBound(MyArray, 1) ' 10 が返ります。
Upper = UBound(MyArray, 3) ' 20 が返ります。
Upper = UBound(AnyArray) ' 10 が返ります。
|
|
|
|
|