VBS 基礎-2 変数、定数、配列
変数
VBScriptでは変数を使用する際にDim ステートメントを利用して変数の宣言を行います。 これによりメモリが割り当てられ、変数使用の用意が行われます。 Dimによる宣言の時は宣言のみとしてください。挿入をおこなうとその段階でエラーが起きますDim val = "Hello World!"上記はエラーが発生します。宣言の後に変数は使用してください。 複数の変数を同時に宣言する場合は ,(カンマ) で区切る事で複数の宣言が可能です。
Dim val , val2 val = "Hello " val2 = "World!" MsgBox(val + val2)この場合も結果は同じく "Hello World!"になります。 変数の名前のつけ方として頭文字は必ずアルファベットである事、使用可能文字は半角英数字である事、となっています。 JavaScriptでは頭に$が利用できましたが、VBScriptでは変数名への使用そのものができません。
定数
Dim による変数宣言では宣言時に値を挿入する事ができませんでした。 一方 const による宣言であればconst df = "Hello World" MsgBox(df)上記のように宣言時から値を挿入する事が可能です。 Dim は変数であるのに対して const は定数の宣言という違いがあります。 const宣言された値は宣言時に値を挿入して以降、これを変更する事ができません。 プログラム上の各所で使用する同じ値等を const宣言された定数としておけば、プログラムの変更が行われる場合に宣言時の値だけを変えればよいので、 後々のプログラムの可動性が高くなります。
配列
配列は以下のようにして宣言します。
Dim ar(1) ar(0) = "Hello" ar(1) = "World!" MsgBox(ar(0))この場合は「Hello」が表示されます。 VBScriptの場合は配列の要素へのアクセスは [番号] ではなく (番号) となります。 要素番号は 0から開始され、また、宣言時に定義された配列数を超えてアクセスが行われると(ここでは ar(2) = "!!"といった具合に)エラーが発生しますので注意が必要です。 注意すべき事として、VBScriptでは宣言時の (数字) が要素数指定の最大数ということです。 他のスクリプト言語の配列の感覚では Dim ar(2) の宣言であれば 0 - 1 の計2つの要素を宣言した形になりますが、 VBScriptでは Dim ar(2) の場合は 0 - 2 の計3つの要素を宣言したことになります。他の言語からVBScriptにくるとここが間違いやすいところです。
ReDim ar(2) ar(0) = "Hello" ar(1) = "World" ReDim ar(2) ar(2) = "!" MsgBox(ar(2))もし途中で配列の要素数の変更を行いたいといった場合にはReDimによる宣言を行っておきます。 これにより、値が変更になった場合でも再度ReDimによって要素数を変更することができます。
VBScriptでは多次元配列もサポートしています。 宣言は Dim ar(5, 10) といった具合に ()内に , で区切って宣言を行います。 60次元配列までの宣言が可能となっていますが、多次元になるにしたがってコードが複雑になるので注意が必要です。
2008年 10月 7日ドキュメント作成
2008年 10月 9日ドキュメント更新