In order for a program to be useful, it needs to be able to store information from the user and then do things with it. Variables are what a program uses to achieve this goal.
As the name suggests, a variable can change its value – it can vary. In Visual Basic there are several different types of information, known as data types, which variables can store. The more commonly used ones are as follows…
String
This is used to store text and any characters that can be typed on the keyboard, e.g. “Cat”, “The dog jumped over the moon”, and “$#Vf@ 3R#QF”. Notice that the text is written inside of quotes. This tells Visual Basic that it is text or string information and not program instructions.
Byte
Small numbers up to +/-255
Integer
This is used for whole numbers (numbers with no decimal places) and can be signed positive or negative e.g. 4, 23, –3, etc. Integers must fall within the range of –32768 to 32767.
Long
Same as integers in every way except for one – they can hold much bigger numbers. No decimal places.
Single (floating point number)
This is used for numbers that have a decimal place, e.g. 3.2, -23.34, and 245.0
Double (floating point number)
Like Single, but can hold much larger numbers.
Boolean (true or false)
This is used for storing the state of something we may be testing within a program, like the “on” and “off” states of a switch.
Naming conventions
These are the rules to follow when naming elements in VB - variables, constants, controls, procedures, and so on:
- A name must begin with a letter.
- May be as much as 255 characters long (but don't forget that somedy has to type the stuff!).
- Must not contain a space or an embedded period or type-declaration characters used to specify a data type ; these are ! # % $ & @
- Must not be a reserved word (that is part of the code, like Option, for example).
- The dash, although legal, should be avoided because it may be confused with the minus sign. Instead of Family-name use Family_name or FamilyName.
Data Types in Summary
Data type |
Storage size |
Range |
Byte |
1 byte |
0 to 255 |
Boolean |
2 bytes |
True or False |
Integer |
2 bytes |
-32,768 to 32,767 |
Long (long integer) |
4 bytes |
-2,147,483,648 to 2,147,483,647 |
Single (single-precision floating-point) |
4 bytes |
-3.402823E38 to -1.401298E-45 for negative values; 1.401298E-45 to 3.402823E38 for positive values |
Double (double-precision floating-point) |
8 bytes |
-1.79769313486232E308 to -4.94065645841247E-324 for negative values; 4.94065645841247E-324 to 1.79769313486232E308 for positive values |
Currency (scaled integer) |
8 bytes |
-922,337,203,685,477.5808 to 922,337,203,685,477.5807 |
Decimal |
14 bytes |
+/-79,228,162,514,264,337,593,543,950,335 with no decimal point; +/-7.9228162514264337593543950335 with 28 places to the right of the decimal; smallest non-zero number is +/-0.0000000000000000000000000001 |
Date |
8 bytes |
January 1, 100 to December 31, 9999 |
Object |
4 bytes |
Any Object reference |
String (variable-length) |
10 bytes + string length |
0 to approximately 2 billion |
String (fixed-length) |
Length of string |
1 to approximately 65,400 |
Variant (with numbers) |
16 bytes |
Any numeric value up to the range of a Double |
Variant (with characters) |
22 bytes + string length |
Same range as for variable-length String |
User-defined (using Type) |
Number required by elements |
The range of each element is the same as the range of its data type. |
|