Solved

How do I declare a variable and assign the value once, and then reuse that variable in multiple procedures?

Posted on 2008-10-23
12
209 Views
Last Modified: 2012-05-05
Ok, this one is really basic, but for some reason I can't figure it out or find the info on the net.  I want to declare a variable in one spot, say:
Dim strX as string = "X"
and then reference that variable in multiple procedures/functions without having to re-declare it.  The reason being I want to assign paths to the variables, and when the paths change I want to only have to update the variables in one location.
0
Comment
Question by:stewdaddy
  • 4
  • 4
  • 2
  • +2
12 Comments
 
LVL 5

Expert Comment

by:two_people_hk
ID: 22785760
You can set a Constants in Visual Basic.
For your reference:
http://www.go4expert.com/forums/showthread.php?t=3689
0
 
LVL 13

Expert Comment

by:SameerJagdale
ID: 22785762
try using shared keyword.

Shared strX As String = "X"
0
 
LVL 13

Expert Comment

by:TechTiger007
ID: 22785797
declare the variable as member variable in the class so that it is accessible from all functions
0
 

Author Comment

by:stewdaddy
ID: 22785810
Where do I declare the variable though? I thought you do it in the declarations section, but I keep getting a "Statement is not valid in a namespace." error.
0
 
LVL 48

Expert Comment

by:jpaulino
ID: 22785823
You have several options:
- Declare in a module as Public
- Declare in a class as Public Shared
- Define on the settings (My Project - Settings Tab)
0
 
LVL 13

Accepted Solution

by:
SameerJagdale earned 500 total points
ID: 22785893
put it in main.
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 

Author Closing Comment

by:stewdaddy
ID: 31509185
Thanks.
0
 
LVL 48

Expert Comment

by:jpaulino
ID: 22785948
Some examples:
' **** CLASS ****

Public Class Class1

    Public Shared myVar As String = "some text"
 

End Class
 

' Then in the form

MessageBox.Show(Class1.myVar)
 
 

' **** MODULE ****
 

Public Module Module1

    Public myNewVar As String = "some text"
 

End Module
 
 

' Then in the form

MessageBox.Show(myNewVar)

Open in new window

0
 

Author Comment

by:stewdaddy
ID: 22786044
jpaulino...
If I go with the module approach, how do I use input from the form, such as:

Public Module Variables
    'Project Directory
    Public strProjectDirectory As String = "J:\" & txtProject.Text & "\"
End Module

VB doesn't let me use txtProject.text
0
 
LVL 48

Expert Comment

by:jpaulino
ID: 22786068

Not that way. You have to declare the variable in the module:

Public strProjectDirectory As String

Then in any place (like in form load event) you can assign the value:

strProjectDirectory  = "J:\" & txtProject.Text & "\"
 
After this you can use it in any place.

 
0
 

Author Comment

by:stewdaddy
ID: 22786101
oh ok thanks
0
 
LVL 48

Expert Comment

by:jpaulino
ID: 22786121
Glad I could help
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
VB.Net - CSV to Oracle table 4 51
Red error squiggly on vb.net 7 27
Programmatically signing Word macros 4 61
Allow user to hide and show datagridview columns 4 17
This tutorial demonstrates one way to create an application that runs without any Forms but still has a GUI presence via an Icon in the System Tray. The magic lies in Inheriting from the ApplicationContext Class and passing that to Application.Ru…
A while ago, I was working on a Windows Forms application and I needed a special label control with reflection (glass) effect to show some titles in a stylish way. I've always enjoyed working with graphics, but it's never too clever to re-invent …
Need to grow your business through quality cloud solutions? With everything required to build a cloud platform and solution, you may feel like the distance between you and the cloud is quite long. Help is here. Spend some time learning about the Con…
A company’s greatest vulnerability is their email. CEO fraud, ransomware and spear phishing attacks are the no1 threat to a company’s security. Cybercrime is responsible for the largest loss of money to companies today with losses projected to r…

914 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now