All userforms run an Intialize Event when the userform is first loaded into
memory. If you have code in it then the code will be ran, if not then it
continues on. You can set each of your worksheet variables at the beginning
of each macro like this
Set wHide = Sheets("Sheet1")
I did notice one thing in your previous post that may be giving you some
problems.
You use this to declare your worksheets. This should be in a standard
module. Which is correct!
Public wHide, wHide2, wHide3 As Worksheet
But using this code to use your publically declared worksheets is incorrect.
Sheets(wHide).Visible = False
You are using wHide as a string not as a worksheet.
You should use:
wHide.Visible = False
or
Sheets(wHide.Name).Visible = False