View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Tom Ogilvy Tom Ogilvy is offline
external usenet poster
 
Posts: 27,285
Default Set module-wide objects?

The first sub you run must set the variable to the worksheet. The code must
be in a general module, not in a worksheet or the thisworkbook module. At
the top of the module:

Public mySheet as Worksheet

Sub Macro1()
set mySheet = Worksheets(1)
End Sub

Sub Macro2()
if mysheet is nothing then macro1
msgbox mysheet.Name
End Sub

Sub Macro3()
if mysheet is nothing then macro1
msgbox mysheet.Range("A1").Value
End Sub

--
Regards,
Tom Ogilvy



"Ed" wrote in message
...
Is it possible to set a worksheet object the will be available to every
macro in a single module, versus having to re-set the same object in each
macro? I can declare the variable across the entire module, but the

objects
seem to vanish ate each individual End Sub.

Ed