連載
» 2006年11月03日 00時00分 公開

基礎解説 演習方式で身につけるチェック式WSH超入門:第6回 VBScriptの配列を極める (1/5)

VBScriptを使ううえで必須となる配列について解説する。また、配列を操作するための関数やステートメントについても取り上げる。

[牟田口大介(Microsoft MVP Visual Developer - Scripting),著]
基礎解説 演習方式で身につけるチェック式WSH超入門
Windows Server Insider


「基礎解説 演習方式で身につけるチェック式WSH超入門」のインデックス

連載目次

 前回は、VBScriptを学ぶうえで避けて通れない、データ型の概念とそれぞれのデータ型の使用方法について詳説した。今回は、やはりVBScriptの重要要素である「配列」について、その概念と使用方法について述べるとともに、配列と併用することが多いステートメントや関数についても取り上げる。

配列とは

 配列とは、同じ型のデータを連続して並べたものである(*)。変数(配列変数と区別して単なる変数は「スカラ変数」という)が1個の値を格納するものだったのに対し、配列は、複数の値を格納することができる。言葉では分かりにくいかもしれないが、次に示す図を見ていただければ分かるだろう。

* 前回説明したとおり、VBScriptで扱うデータ型はバリアント型ただ1つなので、VBScriptにおける配列はすべてバリアント型の配列、バリアント配列である。


配列の概念図
変数がただ1つの値を格納できる箱だったのに対し、配列は、(1つの)値を格納できる箱が複数つながったものと考えることができる。

 このように、変数がただ1つの値を格納できる箱だったのに対し、配列は、(1つの)値を格納できる箱が複数つながったもの、と考えることができる。VBScriptにおいて、この図のような5個の値が格納可能な配列を宣言するには次のように記述する。

Option Explicit
Dim a(4)

 このように記述すると、a(0)、a(1)、a(2)、a(3)、a(4)の5個の値が格納可能な配列を宣言したことになる。これらの値にはそれぞれEmpty値が格納されている。“(0)”の部分を、添え字といい、配列における要素の位置を示す。また“0”の部分をインデックスという。VBScriptの配列のインデックスは、常に0から始まるということに注意していただきたい。つまり、インデックスの最大数は、実際の配列のサイズより1小さいということである。このような配列を「固定サイズ配列」という。

 なお、配列変数の命名にもスカラ変数と同様、

  • 変数名の先頭文字はアルファベット
  • 変数名にはピリオド “.” を使用しない
  • 変数名は255文字以内

という制約があるので注意してほしい。

 配列に値を代入したり、代入した値を参照したりする例を次に示す。

Option Explicit
Dim intNumbers(4) 'サイズ5の配列を宣言

'配列の各要素に値を代入
intNumbers(0) = 0
intNumbers(1) = 2
intNumbers(2) = 4
intNumbers(3) = 6
intNumbers(4) = 8

'3つ目の値を参照
MsgBox "3つ目の値は" & intNumbers(2) & "です。"

 このスクリプトを実行すると次のようなメッセージ・ボックスが表示される。

配列の中の1要素を取り出すスクリプトの実行例
配列から3つ目の値を取り出している。

 この例では、インデックスの2倍の数値を配列のそれぞれの要素として格納し、3つ目の要素(添え字は“(2)”になることに注意)の値を取り出し、MsgBox関数を使って表示している。


       1|2|3|4|5 次のページへ

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。