View Single Post
  #2   Report Post  
bpeltzer
 
Posts: n/a
Default VBA defining variables

Because the variable is declared inside the sub TestMacro2, its 'scope' is
limited to that sub. to make it more widely available you can either declare
it outside the sub (making it 'global', which is easy but not appreciated by
the programming gurus) or make it an argument to Macro5 and Macro6 (ex:
declare Sub Macro6(InputVar as double) ... End Sub, and call that as
Macro6(JJ33).
--Bruce
(BTW, to find such errors earlier, you should set VBA to require that
variables be declared; 'Option Explicit' should appear at the beginning of
each module).


"Jeff" wrote:

Hi

I have the code below. I set JJ=33, and I need Macro5 and Macro6 to use the
variable JJ. But when it goes into those macros JJ is empty. Do you know
how to fix this?

Sub TestMacro2()
Dim JJ As Double
JJ = 33
Call Macro5
Call Macro6
End Sub

Thanks for your help