Thread: declarations
View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Chip Pearson Chip Pearson is offline
external usenet poster
 
Posts: 7,247
Default declarations

The difference between Public and Private (Global is an obsolete
term, use Public instead) is called 'scope' which refers to where
the variables can be accessed. If you declare a variable as
Public, it can be accessed (read from or written to) by any
procedure in any module, or by any procedure in any module in any
project that references the containing project.

If you declare a variable as Private (the default), it can be
accessed only from procedures in that module.

If you declare a Public variable in a form's code module, you
must prefix it with the form's name if you need to use that
variable in any other module. E..g,

[in the userform]
Public MyVar As Integer

[in Module1]
Userform1.MyVar = 123

The same holds for procedures declared in a userform. E.g.

[in the userform]
Public Sub MySub(S As String)
MsgBox S
End Sub

[in Module1]
UserForm1.MySub "abc"




--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com










"jimbo_jones"
wrote
in message
...

I have some code working between modules and a form, but I
don't
understand how its working with the way I declared the
variables.

I want a value from a Sub in a module to be passed to a Sub in
the
form. What is the proper way to do this?

What is the difference between, Public, Private and Global for
variables? Thanks


--
jimbo_jones
------------------------------------------------------------------------
jimbo_jones's Profile:
http://www.excelforum.com/member.php...o&userid=27244
View this thread:
http://www.excelforum.com/showthread...hreadid=470257