SCOPE
Scope refers to where you are able to access a
variable. Basically variables cannot be accessed from outside the
scope they are created in. Look at the following:
A = 5
While A < 10
B = 1
'----- B is created inside this loop and cannot be accessed outside of
this loop
A = A + 1 '----- A was created
before this loop started so it will be able to be used after this loop ends
Wend
Print B
The above program WILL NOT COMPILE. That is because
the variable B was created inside the scope of the WHILE loop and nothing
outside the WHILE loop will be able to access it. The variable A was
created outside the WHILE loop so the variable A could be used anywhere in
this example. So a variable can go into a deeper scope than where it
was created but it cannot go to a lesser scope than where it was
created. A scope deepens every time a new block is started.
Blocks refer to the code within a loop, within a Function, or within a Sub
Routine.