VB2022 VB2019 VB6 VB Sample Code About Us

Lesson 5 : Managing VB Data


5.1 Visual Basic Data Types

In the course of our everyday routines, we come across a plethora of data—names, addresses, monetary values, dates, stock quotes, and statistics—all constituting a diverse array of information. Similarly, when immersed in the realm of Visual Basic, we confront a myriad of data forms, ranging from mathematically calculable values to various textual and other formats. To streamline the coding process for optimal efficiency, VB neatly organizes data into distinct categories. In the case of VB6, these categories predominantly manifest as numeric data types and non-numeric data types.

5.1.1 Numeric Data Types

Numeric data types are fundamental data types that encompass numbers capable of being manipulated through mathematical computations using standard operators. They serve as containers for various types of quantitative information, such as height, weight, share values, prices of goods, monthly bills, fees, and more. In Visual Basic, numeric data is categorized into seven distinct types based on the range of values they can accommodate.

Calculations involving round figures can make use of the Integer or Long Integer data types. However, for programs that necessitate high precision calculations, the preferred choice is to employ the Single and Double data types, commonly known as floating-point numbers. When it comes to currency calculations, it is advisable to use currency data types. Lastly, if utmost precision is indispensable for calculations involving numerous decimal points, the decimal data types prove to be the most suitable option. These data types summarized in Table 5.1

Table 5.1 Numeric Data Types
Type Storage Range of Values
 Byte  1 byte   0 to 255
 Integer  2 bytes   -32,768 to 32,767
 Long  4 bytes  -2,147,483,648 to 2,147,483,648
 Single  4 bytes -3.402823E+38 to -1.401298E-45 for negative values 1.401298E-45 to 3.402823E+38 for positive values.
 Double  8 bytes -1.79769313486232e+308 to -4.94065645841247E-324 for negative values 4.94065645841247E-324 to 1.79769313486232e+308 for positive values.
 Currency  8 bytes -922,337,203,685,477.5808 to 922,337,203,685,477.5807
 Decimal  12 bytes +/- 79,228,162,514,264,337,593,543,950,335 if no decimal is use +/- 7.9228162514264337593543950335 (28 decimal places).

5.1.2 Non-numeric Data Types

Nonnumeric data types are data that cannot be manipulated mathematically. Non-numeric data comprises string data types, date data types, boolean data types that store only two values (true or false), object data type and Variant data type .They are summarized in Table 5.2

Table 5.2: Nonnumeric Data Types

Data Type

Storage

Range

String(fixed length)

Length of string

1 to 65,400 characters

String(variable length)

Length + 10 bytes

0 to 2 billion characters

Date

8 bytes

January 1, 100 to December 31, 9999

Boolean

2 bytes

True or False

Object

4 bytes

Any embedded object

Variant(numeric)

16 bytes

Any value as large as Double

Variant(text)

Length+22 bytes

Same as variable-length string

5.1.3 Suffixes for Literals

Literals are values that you assign to data. In some cases, we need to add a suffix behind a literal so that VB can handle the calculation more accurately. For example, we can use num=1.3089# for a Double type data. Some of the suffixes are displayed in Table 5.3.

Table 5.2: Suffixes for Literals
Suffix Data Type
& Long
! Single
# Double
@ Currency

In addition, we need to enclose string literals within two quotations and date and time literals within two # sign. Strings can contain any characters, including numbers. The following are few examples:

memberName="Turban, John."
TelNumber="1800-900-888-777"
LastDay=#31-Dec-00#
ExpTime=#12:00 am#

5.2 Managing Variables

Variables act as the dynamic carriers of information within a computer's memory, akin to mailboxes that regularly receive new content. In the realm of Visual Basic, these designated memory spaces require specific names, following a set of rules, much like the process of naming mailboxes in a post office.

5.2.1 Variable Names

The following are the rules when naming the variables in Visual Basic

Examples of valid and invalid variable names are displayed in Table 5.4

Table 5.4: Examples of Valid and Invalid Variable Names
Valid Name Invalid Name

My_Car

My.Car 

ThisYear

1NewBoy

Long_Name_Can_beUSE

He&HisFather                  *& is not acceptable


5.2.2 Declaring Variables Explicitly

In Visual Basic, it is a good practice to declare the variables before using them by assigning names and data types. Usually, we declare them in the general section of the codes' windows using the Dim statement.

Dim VariableName As DataType

If you want to declare more variables, you can declare them in separate lines or you may also combine more in one line , separating each variable with a comma, as follows:

Dim VariableName1 As DataType1, VariableName2 As DataType2,VariableName3 As DataType3

Example 5.1

Dim password As String 
Dim yourName As String 
Dim firstnum As Integer 
Dim secondnum As Integer 
Dim total As Integer
Dim doDate As Date 
Dim password As String, yourName As String, firstnum As Integer

Unlike other programming languages, Visual Basic actually doesn't require you to specifically declare a variable before it's used. If a variable isn't declared, VB willautomatically declare the variable as a Variant. A variant is data type that can hold any type of data.

For string declaration, there are two possible types, one for the variable-length string and another for the fixed-length string. For the variable-length string, just use the same format as example 5.1 above. However, for the fixed-length string, you have to use the syntax as shown below:

Dim VariableName as String * n

where n defines the number of characters the string can hold.

For example,

Dim yourName as String * 10
  

*yourName can holds no more than 10 Characters.

5.2.2 Scope of Declaration

Other than using the Dim keyword to declare the data, you can also use other keywords to declare the data. Three other keywords are private ,static and public. The forms are as shown below:

Private VariableName as Datatype
Static VariableName as Datatype
Public VariableName as Datatype

The above keywords indicate the scope of the declaration. Private declares a local variable or a variable that is local to a procedure or module. However, Private is rarely used, we normally use Dim to declare a local variable. The Static keyword declares a variable that is being used multiple times, even after a procedure has been terminated.  Most variables created inside a procedure are discarded by Visual Basic when the procedure is finished, static keyword preserves the value of a variable even after the procedure is terminated. Public is the keyword that declares a global variable, which means it can be used by all the procedures and modules of the whole program.

5.3 Constants

Constants are different from variables in the sense that their values do not change during the running of the program.

5.3.1 Declaring a Constant

The syntax to declare a constant is

Constant Name As Data Type = Value

Example 5.3

In this example, we insert a Shape control and two command buttons. Set the shape value of the Shape control to 3 so that it becomes a circle. Rename one of the command buttons to CmdResize for changing the size of the circle. Rename the other command button as CmdArea for calculation of the area of the circle. In this program, we declare four variables and a constant in the General section. The varaible h is to store the value of height of the circle and the variable r is to store the value of the radius which is half of the height. In addtion, the variable a is to store the value of area in twip using the formula area of circle=πr2. Besides that, the constant Pi represents π which we fixed at 3.142. Finally, the variable area is to store the value in cm by multiplying a with 0.001763889. (1 twip =0.001763889 cm)

The Code
Dim h, r, a, rad, area As Single
Const Pi As Single = 3.142

Private Sub CmdArea_Click()
 r = h / 2
 rad = r * 0.001763889
 a = Pi * rad ^ 2
 area = Round(a, 2)
 MsgBox ("The Area of the circle is " & area)
End Sub

Private Sub CmdResize_Click()
 h = InputBox("Enter the value of height")
 MyShape.Height = h
End Sub
The Output
Figure 5.1
Figure 5.1



Copyright©2008 Dr.Liew Voon Kiong. All rights reserved |Contact|Privacy Policy