The "option Explicit" is a directive to excel that tells it that you want to be
forced to declare all your variables in that module.
I saved this from a previous post:
If I add "Option Explicit" to the top of a module (or have the VBE do it for me
via tools|options|Editor tab|check require variable declaration), I know that
most of my typos will stop my code from compiling.
Then I don't have to spend minutes/hours looking at code like this:
ctr1 = ctrl + 1
(One is ctr-one and one is ctr-ell)
trying to find why my counter isn't incrementing.
And if I declare my variables nicely:
Dim wks as worksheet
not
dim wks as object
and not
dim wks as variant
I get to use the VBE's intellisense.
If I use "dim wks as worksheet", then I can type:
wks.
(including the dot)
and the VBE will pop up a list of all the properties and methods that I can
use. It saves time coding (for me anyway).
And one final selfish reason.
If I use a variable like:
Dim ThisIsACounterOfValidResponses as Long
I can type
Thisis
and hit ctrl-space and the VBE will either complete the variable name or give me
a list of things that start with those characters.
And by using a combination of upper and lower case letters in my variables, the
VBE will match the case found in the declaration statement.
I get a Loop without Do error. I put Option Expicit at the top of the module
I am using. There are other macros in there.