UBoundユーバウンド関数

本ページには広告が含まれています。

配列の上限値(最大インデックス)を返します。arraynameに上限値を求める配列の名前、dimensionに上限値を求める配列の次元を指定します。

構文
  1. Integer = UBound( arrayname, dimension )
引数
arrayname (#array必須
上限値を求める配列の名前
dimension (Integer = 1)省略可
返す次元を示す整数
戻り値
配列の上限値

プログラム

UWSC

解説

    2行目
    UWSC
    arraynameの右側にdimensionの数値から1を引いた数だけ[0]を繰り返した文字列を結合し、RESIZE関数の引数として渡します。一次元目の上限値はRESIZE(arrayname)、二次元目の上限値はRESIZE(arrayname[0])、三次元目の上限値はRESIZE(arrayname[0][0])で求められます。EVAL関数で文字列で書かれた式を実行することができます。

UBound関数とは

UBound関数 (自作関数)とは引数に指定した配列で使用できる最大のインデックス番号を返す関数で、配列を扱う場面ではよく使う関数です。

UBoundUpper(上の)とBound(限界)で上限値を意味しています。

配列の上限値は以下の式から求めることができます。

要素数 = 配列の上限値 - 配列の下限値 + 1
配列の上限値 = 要素数 + 配列の下限値 - 1

使い方

一次元配列の上限値を求める

一次元配列arrayの上限値を求めます。DIM 配列名[値]で宣言した場合UBound関数 (自作関数)が返す値は、宣言時に指定した値に等しくなります。

UWSC
結果
プレーンテキスト

宣言した配列の次元より一つ大きい次元を指定した場合、上限値は-1を返します。それ以降の次元はエラーを返します。

UWSC
結果
プレーンテキスト

多次元配列の上限値を求める

arrayの一次元目と二次元目の上限値を求めます。一次元目を求める場合、第二引数の1は省略することができます。

UWSC
結果
プレーンテキスト

SAFEARRAY関数 (スクリプト関数)で生成した二次元配列の一次元目と二次元目の上限値を求めます。第二引数が一次元目の上限値、第四引数が二次元目の上限値なのでその値が返ります。

UWSC
結果
プレーンテキスト

プログラム実行例

フォルダ内のファイルを更新日時でソートする

UWSC
結果
プレーンテキスト
使用関数

テキストファイルの内容を行毎にソートして出力する

UWSC
使用関数

テキストファイルの内容を行毎にソートして書き換える

UWSC
使用関数

関連記事

CALCARRAY関数 (スクリプト関数)
配列データを計算します。
GETALLWIN関数 (スクリプト関数)
全ウィンドウのIDを取得します。
GETOLEITEM関数 (スクリプト関数)
コレクションを取得します。
JOIN関数 (スクリプト関数)
配列の中身を区切り文字で結合し、文字列として返します。
QSORT関数 (スクリプト関数)
配列の中身をソートします。
SETCLEAR関数 (スクリプト関数)
配列を指定された値で埋めます。
SHIFTARRAY関数 (スクリプト関数)
配列データをシフトします。
連想配列
連想配列とは、自動的に割り当てられる数字をキーとして持つかわりに、自由に任意の文字列を割り振ることができる配列のことです。添え字に番号の変わりに名前をつけることでわかりやすく管理することができます。
LENGTH関数 (スクリプト関数)
文字数もしくは配列サイズを返します。
POPUPMENU関数 (スクリプト関数)
ポップアップメニューを表示します。