VBAで使える関数です。
配列の添字(インデックス)の最大値を返します。
使用例
例1
コード
Sub Func_UBound() Dim season(3) As Variant MsgBox UBound(season) End Sub
出力
配列宣言すれば値を代入しなくともUBoundの値は決まります。
ただし「Dim season() As ~」というような動的配列宣言の場合はエラーになります。
例2
コード
Sub Func_UBound() Dim season As Variant season = Array("春", "夏", "秋", "冬") MsgBox UBound(season) End Sub
出力
もちろん値を代入してもUBoundの値は変わりません。
例3
コード
Option Base 1 Sub Func_UBound() Dim season As Variant season = Array("春", "夏", "秋", "冬") MsgBox UBound(season) & "," & season(2) End Sub
出力
Option Baseにより添え字が1から始まることとされていますので、season(1)が「春」、season(2)が「夏」、season(3)が「秋」、season(4)が「冬」となり、UBoundの値は4となります。
例4
コード
Sub Func_UBound() Dim season(3, 1) As Variant season(0, 0) = "春": season(0, 1) = "桜" season(1, 0) = "夏": season(1, 1) = "向日葵" season(2, 0) = "秋": season(2, 1) = "彼岸花" season(3, 0) = "冬": season(3, 1) = "寒椿" MsgBox UBound(season, 2) End Sub
出力
配列のどの次元を指すのかを第2引数で指定できます。
次数は1から始まりますので、2次元配列の場合指定できる値は1か2です。
書式
LBound(配列[,次数])
どの次元を指すのかを第2引数で指定できます。
次数は1から始まります。省略した場合は1とみなされます。
備考
-