配列内の要素数を取得(UBound関数)

| コメント(0)

タイトルは語弊あるけど。

正確には「添え字の最大数」かな。

 

UBound(arrayname[, dimension])

 arrayname : 配列名

 dimension : 次元の指定。省略したら1になる。こみあった配列にしてなければ別に指定しなくてもいいんじゃね?

 

例)

   Frt = array("みかん","りんご","メロン")

   MsgBox UBound(Frt)

      →「2」が表示される。

ぐぐったら「大きさ」とか「サイズ」とか「長さ」とかいろいろな言葉で書かれてたけど、初心者かつ配列を理解し切れてるわけじゃないので、今回の用途として「配列内の要素数の取得」と表現。

VBAでの配列は0スタートなので、UBoundで出力される要素数は一つ少ない数になる。

例)array("みかん","りんご","メロン")

  要素数は3つだが添え字は0はじまりなので、UBoundで返ってくるのは「2」。

  使える添え字は「0」「1」「2」の3つ。でも最大数は2だから。

  これ注意。忘れないこと。

 

 

 

コメントする