G
gregga
I have two questions.
Is a public variable visible to all sub procedures in all modules bu
just under one workbook? In this case a public variable has bee
declared in a module under Personal.xls, but I also have anothe
workbook containing macros but am confused as to whether a public va
is visible to all workbooks - I only want it visible unde
Personal.xls.
Lastly, I've created a userform whereby the user has 3 options (usin
option buttons) and an OK and CANCEL button. I noticed th
"CommandButton1_Click()" userform is always preceded m
"private"...namely -
Private Sub CommandButton1_Click()
If OptButton_All Then
arSelect = Array("N3", "N2", "O-P", "SO4")
Else
If OptButton_SulphateOnly Then
arSelect = Array("SO4")
Else
If OptButton_ExcludeSulphate Then
arSelect = Array("N3", "N2", "O-P")
Else
MsgBox "You must select an option!"
Hide
Show
End If
End If
End If
Unload Me
End Sub
The array "arSelect" is declared as "Public arSelect As Variant" at th
very start of module 1. The module then opens the userform. Th
userform captures the selection and assigns a series of value(s) t
arSelect. I want arSelect to be available to module1.
I noticed that if I changed the "Private Sub CommandButton1_Click()" t
"*Public* Sub CommandButton1_Click()" then arSelect is then available t
module 1, but refuses to work if it is Private.
I guess I've answered my own question, but why does a userfor
automatically delcare procedures as private?
Thanks
Is a public variable visible to all sub procedures in all modules bu
just under one workbook? In this case a public variable has bee
declared in a module under Personal.xls, but I also have anothe
workbook containing macros but am confused as to whether a public va
is visible to all workbooks - I only want it visible unde
Personal.xls.
Lastly, I've created a userform whereby the user has 3 options (usin
option buttons) and an OK and CANCEL button. I noticed th
"CommandButton1_Click()" userform is always preceded m
"private"...namely -
Private Sub CommandButton1_Click()
If OptButton_All Then
arSelect = Array("N3", "N2", "O-P", "SO4")
Else
If OptButton_SulphateOnly Then
arSelect = Array("SO4")
Else
If OptButton_ExcludeSulphate Then
arSelect = Array("N3", "N2", "O-P")
Else
MsgBox "You must select an option!"
Hide
Show
End If
End If
End If
Unload Me
End Sub
The array "arSelect" is declared as "Public arSelect As Variant" at th
very start of module 1. The module then opens the userform. Th
userform captures the selection and assigns a series of value(s) t
arSelect. I want arSelect to be available to module1.
I noticed that if I changed the "Private Sub CommandButton1_Click()" t
"*Public* Sub CommandButton1_Click()" then arSelect is then available t
module 1, but refuses to work if it is Private.
I guess I've answered my own question, but why does a userfor
automatically delcare procedures as private?
Thanks