ローカル スコープを持つ変数は
Local x As Number 'Dim x As Number と同じです
ローカル変数が使用されるのは、1 つの式の 1 回ずつの評価の間に限られます。つまり、ある式から別の式のローカル変数の値にアクセスすることはできません。
例
Rem Formula A Local x as Number x = 10 formula = x Rem Formula B EvaluateAfter ({@Formula A}) Local x as Number formula = x + 1
EvaluateAfter({@Formula A})関数を呼び出すと、必ず Formula A が評価されてから Formula B が評価されます。Formula A は値 10 を返し、Formula B は値 1 を返します。Formula B は Formula A の x にアクセスできないため、値 10 を使用することも、1 を加算することもできません。その代わり、Formula B は、初期化されていないローカル変数 x のデフォルト値 0 を使用し、それに 1 を加えて 1 を得ます。
別の式の中には、名前は同じで型が異なるローカル変数を作成することもできます。たとえば、Formula A と Formula B で型の宣言は衝突しません。
Rem Formula C Local x as String x = "hello" formula = x
3 つのスコープのうち、最も効率的なのはローカル変数です。ローカル変数は、別の式の別のローカル変数と衝突することもありません。したがって、変数はできる限りローカルとして宣言するのが適切です。