LBound関数

LBound関数は、VBA関数の中で配列・エラー関数に分類される関数です。

目次

スポンサー リンク

LBound関数とは

LBound関数は、配列の指定された次元で使用できる最小の添字を、長整数型 (Long)の値で返します。

構文LBound(arrayname[, dimension])
引数省略説明
arrayname ×配列変数の名前です。変数の標準的な名前付け規則に従って指定します。
dimension バリアント型 (内部処理形式 Long の Variant) の値を指定します。添字の最小値を調べる対象となる配列の次元を示す整数を指定します。最初の次元なら 1、2 番目の次元なら 2、というように指定します。引数 dimension を省略すると、1 が指定されたものと見なされます。

LBound 関数は、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

配列の添字の最小値の既定値は、0 または 1 です。この値は、Option Base ステートメントの設定によって決まります。Array 関数で作成された配列の添字は、0 から始まり、Option Base ステートメントの影響は受けません。
Dim、Private、Public、ReDim、Static のいずれかのステートメントで To 節を使って配列の次元を設定すると、添字の最小値に任意の整数値を指定できます。

LBound関数のサンプルコード

次の例では、LBound 関数を使って、配列内の指定された次元の添字として使える最小値を求めます。配列の添字の既定の最小値 0 を変更するには、Option Base ステートメントを使います。


Sub sample()

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 を返します。

End Sub

実行結果

解説

配列・エラー関数一覧

関数名内容
Array配列が格納されたバリアント型の値を返します。
CVErr指定したエラー番号をバリアント型の値に変換します。
Error指定したエラー番号に対応するエラーメッセージを返します。
IsArray変数が配列かどうかを調べた結果を返します。
IsError式がエラー値かどうか調べた結果を返します。
LBound指定できる配列のインデックス番号の最小値を返します。
UBound指定できる配列のインデックス番号の最大値を返します。
ExcelのVBAについてのQ&A掲示板

↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください^^

VBAのInternetExplorer操作入門

↑ExcelのVBAをマスターできたら、エクセルVBAのIE(InternetExplorer)操作にも挑戦してみてください^^

VBAのIE制御入門RSS

RSSフィードを登録すると最新記事を受け取ることができます。

VBAIE操作のスカイプレッスン

エクセルVBAのステートメント

こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのオブジェクト

こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのプロパティ

こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのメソッド

こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのイベント

こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。