VBArrayクラスは、Visual BasicやVBScriptで作成した配列(セーフ配列)をActiveXオブジェクトを介して受け取った場合に生成されるオブジェクトのクラスです。このオブジェクトを直接生成することはできません。また、オブジェクトの内容を書き換えることもできません。
表 8. VBArrayクラス
| 機能 | 書式 | 説明 |
|---|---|---|
| 次元数を取得する | x.dimensions() | VBArrayオブジェクトの次元数を取得します。1以上の整数を返します。 |
| 指定された次元の最小のインデックス値を得る | x.lbound(x) | 引数として、1以上、dimensions()の値以下の整数を指定します。その次元の最小のインデックス値が整数で返ります。 |
| 指定された次元の最大のインデックス値を得る | x.lbound(x) | 引数として、1以上、dimensions()の値以下の整数を指定します。その次元の最大のインデックス値が整数で返ります。 |
| 指定された要素の値を得る | x.getItem(x1, x2, ...) | 引数として、各次元のインデックス値を指定します。引数の数はdimensions()の値に一致しなければなりません。指定された要素の値が返ります。 |
| Arrayに変換する | x.toArray() | VBArrayをArrayに変換します。多次元の配列については、例えば(1, 1), (2, 1), (1, 2), (2, 2)のように、低い次元のインデックス値が先に変動する順序で一次元配列に変換されます。 |
このVBArrayオブジェクトは、Windows Script Hostなどで使用されるJScriptインタプリタとの互換のために用意されています。JScriptの実装ではVariant配列のみサポートされていますが、GWSの実装のVBArrayではVariant以外の配列も受け取ることができます。