View Single Post
  #6   Report Post  
Posted to microsoft.public.excel.programming
Donny Donny is offline
external usenet poster
 
Posts: 11
Default How to get variables from worksheet code to userform code


I also tried this, and I get a blank text box and a $ msgbox. :(
I must be declaring Public Money in the wrong place. I tried it in
ThisWorkbook and in Sheet1, same results when running Sheet1.mony()
and ThisWorkbook.mony()

The only place I see "modules" is under the Personal.xls, which I
don't want.

What could I be missing?


On Aug 22, 7:50*pm, JLGWhiz wrote:
It worked for me.

I put Public Money As Double at the top of Module2 then this code.

Sub mony()
* *Money = 100
* *UserForm1.Show
End Sub

I created a UserForm1 with a TextBox1 with this code behind the form.

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
* * MsgBox "$" & TextBox1.Text
End Sub

Private Sub UserForm_Initialize()
* * TextBox1.Text = Money
End Sub

The TextBox shows a text of 100 and when I exit the UserForm, which
simultaneously exits the TextBox, I get a message box with $100.

"Donny" wrote:
Made these changes, unfortunately still won't work.


'Worksheet code--------------


Public Money As Double


Sub StartButton_Click()
Money = 100
End Sub


'Worksheet code--------------


'Userform code--------------------


Public StoreMoney As Double


Sub UserForm_Initialize()
StoreMoney = 0
StoreText = "$" & StoreMoney *'This shows $0 in the Userform text box
End Sub


'Macro that sets the value of StoreMoney to 75


Sub BuyStuff_Click()
MsgBox (Money)
MsgBox (StoreMoney)
If Money = StoreMoney Then
Money = Money - StoreMoney
Sheet1.Range("E9") = Money
Else: OK = MsgBox("You don't have enough money!", vbOKOnly, "Not
enough cash!")
End If
End Sub


'Userform code--------------------


I get three MsgBoxs:
Blank
75
You don't have enough money!


Money variable is still not availible to the userform macro.
In the Userform (general) I wrote: Public Money As Double
This just gives a 0 in the first MsgBox.


Any ideas?