Variables can store the information required to use in our programming. When we are working with data we deal with different type of data,so we need required different types of variables to store the data. In this session will discuss how to declare a variable and different types of variables available in VBA.

How to Declare a Variable

We need to use Dim or Dimension statement to declare a variable in VBA as shown below:

Dim <Variable Name> as  <Data Type>

Variable Name: Name of the variable which we want to declare, follow the following rules while choosing a variable name:

  1. 1. It must be less than 255 characters
  2. 2. Blank Spaces and special characters are not allowed
  3. 3. It must not begin with a number (it should begin with a character or an underscore)
  4. 4. You can not use reserved keywords:

And As Boolean ByRef
Byte ByVal Call Case
CBool CByte CDate CDbl
CInt CLng Const CSng
CStr Date Dim Do
Double Each Else ElseIf
End EndIf Error FALSE
For Function Get GoTo
If Integer Let Lib
Long Loop Me Mid
Mod New Next Not
Nothing Option Or Private
Public ReDim REM Resume
Select Set Single Static
Step String Sub Then
To TRUE Until vbCrLf
vbTab With While Xor
Some Valid Example of Variable Names:

intSal
Company_Salary
int_Salary
Sal_Dept_88

Some Invalid Example of Variable Names:

int Sal
Company&Salary
int.Salary
88Sal_Dept

Tip! Variable name should convince the data and data type, so that user can quickly understand the variable

Data Type: We can devide the data types in to 2 parts for our understanding purpose.

1. Numeric Type:

The following are the data types to deal with numeric data (byte type data,integer data,double data ,etc…)

Data Type Name Type Data Range and Remarks
Byte Numeric Whole number between 0 and 255.
Integer Numeric Whole number between -32,768 and 32,767.
Long Numeric Whole number between – 2,147,483,648 and 2,147,483,647.
Currency Numeric Fixed decimal number between -922,337,203,685,477.5808 and 922,337,203’685,477.5807.
Single Numeric Floating decimal number between -3.402823E38 and 3.402823E38.
Double Numeric Floating decimal number between -1.79769313486232D308 and 1.79769313486232D308.

2. Non-Numeric Type

The following are the data types to deal with non-numeric data (string type data,date type data,time type data ,etc…)

Data Type Name Type Data Range and Remarks
String Text Text.
Date Date Date and time.
Boolean Boolean True or False.
Object Object Microsoft Object.
Variant Any type Default type if the variable is not declared with any data type. It will accept any kind of data.

And the variant data type will accept any type of data:

Data Type Name Type Data Range and Remarks
Variant Any type Default type if the variable is not declared with any data type. It will accept any kind of data.
Variables and Data Types in Excel VBA – Example Programs

The following example adds two integers:

Sub sbAddTwoValues()
'Variable Declaration
Dim intValuA As Integer
Dim intValuB As Integer
Dim intValuSum As Integer
'Initiating the Values
intValuA = 5000
intValuB = 10000
'Calculating the Total
intValuSum = intValuA + intValuB
'Showing the result in the message box
MsgBox intValuSum
End Sub

The following example accepts the user name (string) and show it in the message box

Sub sbStringExample()
'Variable Declaration
Dim strUserName As String
'Accepting the data from the user
strUserName = InputBox("Enter Your Name")
'Showing it again in the message box
MsgBox "Hello!" & strUserName
End Sub