スコープ
スコープとは変数にアクセスできる場所を意味します。基本的に変数は作成されたスコープの範囲外からアクセスできません。以下をご確認ください:
A = 5
While A < 10
B = 1 '----- このループの内側で B を作成しても、このループの外側からアクセスできません。
A = A + 1 '----- このループの開始前に作成された A はループの終了後も使用可能です。
Wend
Print B
上述のプログラムはコンパイルできません。すなわち、変数 B は WHILE ループにおけるスコープの内側に作成されるため、 WHILE ループの外側からはアクセス不能です。変数 A は WHILE ループの外側に作成されるため、この用例のどこからでも変数 A は利用可能です。つまり、変数は作成した場所よりも深いスコープで扱えますが、作成した場所よりも浅いスコープでは扱えません。スコープは新規ブロックを作成するたびに深くなります。ブロックとはループの内側、関数の内側、あるいはサブルーチンの内側にあるコードのことを意味します。