|
Making Decisions Using If...Then...Else
The If...Then...Else statement is used to evaluate
whether a condition is True or False and,
depending on the result, to specify one or more statements
to run. Usually the condition is an expression that uses a
comparison operator to compare one value or variable with
another.
Running Statements if a Condition is True
To run only one statement when a condition is True,
use the single-line syntax for the If...Then...Else
statement. The following example shows the single-line
syntax. Notice that this example omits the Else
keyword.
Sub FixDate()
Dim myDate
myDate = #2/13/95#
If myDate < Now Then myDate = Now
End Sub
To run more than one line of code, you must use the
multiple-line (or block) syntax. This syntax includes the End
If statement, as shown in the following example:
Sub AlertUser(value)
If value = 0 Then
AlertLabel.ForeColor = vbRed
AlertLabel.Font.Bold = True
AlertLabel.Font.Italic = True
End If
End Sub
Running Certain Statements if a Condition is True and
Running Others if a Condition is False
You can use an If...Then...Else statement to
define two blocks of executable statements: one block to run
if the condition is True, the other block to run if
the condition is False.
Sub AlertUser(value)
If value = 0 Then
AlertLabel.ForeColor = vbRed
AlertLabel.Font.Bold = True
AlertLabel.Font.Italic = True
Else
AlertLabel.Forecolor = vbBlack
AlertLabel.Font.Bold = False
AlertLabel.Font.Italic = False
End If
End Sub
Deciding Between Several Alternatives
A variation on the If...Then...Else statement
allows you to choose from several alternatives. Adding ElseIf
clauses expands the functionality of the If...Then...Else
statement so you can control program flow based on different
possibilities. For example:
Sub ReportValue(value)
If value = 0 Then
MsgBox value
ElseIf value = 1 Then
MsgBox value
ElseIf value = 2 then
Msgbox value
Else
Msgbox "Value out of range!"
End If
You can add as many ElseIf clauses as you need to
provide alternative choices. Extensive use of the ElseIf
clauses often becomes cumbersome. A better way to choose
between several alternatives is the Select Case
statement.
Making Decisions with Select Case
The Select Case structure provides an alternative
to If...Then...ElseIf for selectively executing one
block of statements from among multiple blocks of
statements. A Select Case statement provides
capability similar to the If...Then...Else statement,
but it makes code more efficient and readable.
A Select Case structure works with a single test
expression that is evaluated once, at the top of the
structure. The result of the expression is then compared
with the values for each Case in the structure. If
there is a match, the block of statements associated with
that Case is executed, as in the following example.
Select Case Document.Form1.CardType.Options(SelectedIndex).Text
Case "MasterCard"
DisplayMCLogo
ValidateMCAccount
Case "Visa"
DisplayVisaLogo
ValidateVisaAccount
Case "American Express"
DisplayAMEXCOLogo
ValidateAMEXCOAccount
Case Else
DisplayUnknownImage
PromptAgain
End Select
Notice that the Select Case structure evaluates an
expression once at the top of the structure. In contrast,
the If...Then...ElseIf structure can evaluate a
different expression for each ElseIf statement. You
can replace an If...Then...ElseIf structure with a Select
Case structure only if each ElseIf statement
evaluates the same expression.
Try Yourself
1. Open a text editor type following code.
<HTML>
<HEAD><TITLE>Hello World</TITLE>
<SCRIPT LANGUAGE="VBScript">
<!--
Sub Button1_OnClick
MsgBox "Hello to VBScript"
End Sub
-->
</SCRIPT>
</HEAD>
<BODY>
<H3>Welcome to VBScript</H3><HR>
<FORM><INPUT NAME="Button1"
TYPE="BUTTON" VALUE="Click
Here"></FORM>
</BODY>
</HTML>
2. Save the file "Hello.HTM", open the file in
browser.
3. Click the button it shows the message "Hello to
VBScript"
|