View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
-JEFF-[_2_] -JEFF-[_2_] is offline
external usenet poster
 
Posts: 26
Default UNDERSTANDING VARIABLE SCOPE

Will try that. I unload it because I thought I had to in order to open up
other forms dependingon what buttons are clicked. How do I create a public
variable that is visible to all of the userform control subs? I have been
coding all of my VBA in the userform control subs, would it be better
practice (or easier to control) to have the click() subs call procedures in a
module and then return?
-JEFF-

"Jim Thomlinson" wrote:

The values in the form are being discarded because you are unloading the
form. Instead of unloading the form just hide it. By doing this the values
will not be lost and you will not need to store them anywhere. The next time
you show the forms it look just like th user left it before it was hidden.
--
HTH...

Jim Thomlinson


"-JEFF-" wrote:

I am trying to maintain variables value so when I return to a userform that
has already been used, it will already be filled out (as long as the user has
previously visited it. I thought declaring the variables as public at the
module level would make them visible in all subs but it is not working.

In module 3 I have variables declared as public. In the sub, the variables
are not declared because I want to use to publics but they seem to get over
written when they are assigned a value. ie.

MODULE 3
public v1 as string
public v2 as string

private sub MyButton_click()
v1 = "myValue"
v2 = "myValue"
end sub

The watch window shows <Out of context after values have been assigned
inside the sub.