Variables- Multiple forms

A

andywalker

Hi,

I have two forms And i want to be able to pass variables from one for
to another. for example in form 1:

CurrentUser = TxtUser.value

then in form 2 i want to be able to use this variable eg

LblUser.Caption = CurrentUser

Where do i declare this variable in Vba and how?

I have tried a global variable in a standard module but this didn
work.

any help would be appreciated

thank
 
A

anilsolipuram

If form1 variable as to be passed to form2 , in the form1 you have
define the function which will return the variable from form1 and from
form2 you have to call that defined function



in form1 the code is

Dim str As Variant
Private Sub UserForm_Initialize()
str = "testmne"
End Sub
Function f11()
f11 = str
End Function

in form2 the code is

Private Sub UserForm_Initialize()
MsgBox UserForm2.f11
End Sub
 
H

Henry

Andy,

Why not put the value in an unused cell on one of your sheets.

I usually have a hidden sheet called "system" where I store non-volatile
variables.

Sheets("system").Range("A1").Value = TxtUser.Value

LblUser.Caption = Sheets("system").Range("A1").Value

If you don't want to save this value when you close the workbook

Sheets("system").Range("A1").Value = ""
Application.Quit

You could also name the range *Sheets("system").Range("A1")* as CurrentUser
so
CurrentUser.Value = TxtUser.Value
Etc.

HTH
Henry
 
T

Tim Zych

The global in the module does work.

But here's a more explicit approach.

In the callee userform:

----------------------------------
Private mstrUserName As String

Property Let UserName(ByVal strUserName As String)
mstrUserName = strUserName
End Property

Private Sub CommandButton1_Click()
MsgBox mstrUserName
End Sub
---------------------------------

and in the caller userform

Load UserForm1
With UserForm1
.UserName = "Tim Zych"
.Show
End With
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top