VBScript - 変数を宣言する | Dimステートメント
変数の宣言
変数を宣言するには Dim ステートメントを使う。
Dim varName
- varName: 変数名。名前の付け方は後述の命名規則に従うこと
変数のデータ型はバリアント型(Variant)になる。
初期値は Empty である。
(Empty は変数が初期化されていないことを示すキーワード)
カンマで区切って一度に複数宣言することもできる。
Dim varNameA, varNameB
変数の命名規則
変数名は以下の規則に従って付ける。
- 先頭文字はアルファベットであること
- ピリオドを使わないこと
- 255文字(半角の場合)以内であること
- 変数の適用範囲内で同じ名前の変数を複数宣言しないこと
変数の適用範囲
変数の適用範囲は、変数を宣言した位置で決まる。
適用範囲には次の2つがある。
- プロシージャレベル
- スクリプトレベル
プロシージャレベルはプロシージャ内部で宣言した変数に適用される。
その変数を宣言したプロシージャ内でのみ有効となる。
スクリプトレベルはプロシージャ外部で宣言した変数に適用される。
スクリプト全体で有効となる。
変数の有効期間
プロシージャレベルとスクリプトレベルで変数の有効期間が異なる。
プロシージャレベルはプロシージャ内にいる間のみ有効。
変数を宣言したプロシージャを開始したときに始まり、プロシージャが終了したときに終わる。
プロシージャの途中で変数を宣言したとしても、プロシージャの開始時から有効になるので留意する。
スクリプトレベルは、スクリプトで宣言されてからスクリプトが終了するまでの間、有効となる。
次のスクリプトでは、プロシージャが終わる直前で変数 result を宣言しているが、プロシージャの始まりからその変数を利用できる。
Option Explicit
Sub Main
'Dim result より前にあるが変数を利用できる
result = 1 + 1
MsgBox "1 + 1 は " & CStr(result)
Dim result
End Sub