変数のスコープと存続期間

変数のスコープは、宣言する場所によって決まります。プロシージャ内で変数を宣言すると、そのプロシージャ内のコードのみがその変数の値にアクセスしたり値を変更できます。ローカル・スコープがあり、プロシージャ・レベルの変数です。プロシージャの外部で変数を宣言する場合は、スクリプト内のすべてのプロシージャで変数を認識できるようにします。これはスクリプト・レベルの変数で、スクリプト・レベルのスコープがあります。

変数の存続期間は、変数の存在期間によって異なります。スクリプト・レベルの変数の存続期間は、スクリプトが宣言された時点からスクリプトの実行が終了するまでです。プロシージャ・レベルでは、変数はそのプロシージャ内にいる間のみ存在します。プロシージャが終了すると、変数は破棄されます。ローカル変数は、プロシージャの実行中の一時ストレージ・スペースとして最適です。

次の例は、BSL変数の使用方法を示しています:

例1: グローバル・スコープ

Dim GlobalVariable 
GlobalVariable = "This is a script-level variable."
Sub MySub
        GlobalVariable = "Modified within procedure."
End Sub

例2: ローカル・スコープ

Sub MySub
    Dim LocalVariable
    LocalVariable = "This is a local variable."
End Sub