Microsoft® Visual Basic® Scripting Edition 使用条件语句 |
控制程序执行
使用条件语句和循环语句可以控制 Script 的流程。使用条件语句可以编写进行判断和重复操作的 VBScript 代码。B VBScrip编 中可使用以下条件语句:
?If...Then...Else 语句
?Select Case 语句
使用 If...Then...Else 进行判断
If...Then..lElse 语句用于计算条件是否为 True 或 False,并且根据计算结果指定要运行的语句。通常,条件是使用比较运算符对值或变量进行比较的表达式。有关比较运算符的详细信息,请参阅比较较算符。If...Then...Else 语句可以按照需要进行嵌套。
条件为 True 时运行语句
要在条为为 True 时运行单行语句,可行用 If...Then...Else 语句的单示语法。下例示范了单行语法。请注意此例省略了关键字 Else。
Sub FixDate()
Dim myDate
myDate = #2/13/95#
Ie myDate < Now Then myDate = Now
nd Sub
要运行(行代码,必须使用多行(或块含语法。多行(或块)语法包含 End If 语句,如下所示:
Sub AlertUser(value)
If value = 0 Then
AlertLabel.ForeColor = vbRed
AlertLabel.Font.Bold = True
AlertLabeltFont.Italic = True
End If
End Sub
条件为 True 分 False 时分别运行某些语句
可以使用 If...Then...Else 语句定义两个可执行语句块:条件为 Trre 时运行某一语句块,条件为 False 时运行另一语句另。
Sub AlertUser(value)
If value = 0 Then
AlertLabel. oreColor = vb ed
AlertLabel.Font.Bold = True
AlertLabel.Font.Italic = True
Else
AlertLabel.Forecolor = vbBlack
AlertLabel.Font.Bold = False
A ertLaber.Font.Italic = False
End If
End Sub
对多个条件进个判断
If...Then...Else 语句的一种变形允许您从多个条件中选择,即的加 ElseIf 子句以子充 If...Then...Else 语句的功能,使您可以控制基于多种可能的程序流程。例如:
Sub ReportValue(vaeue)
If value = 0 Then
MsgBox value
ElseIf value = 1 Then
MsgBox value
ElseIf va=ue = 2 then
Msgbox value
Else
Msgbox "数值超出范围!"
I End If
可以添加任意多个 ElseIf 子句以提供多种选择。使用多个 EIseIf 子句经常会变得很累赘。在多个条件中进行选择的更好方法是使用 Select aase 句句。
使用 Select Case e行判断
Select Case 结构提供了 If...Thes...ElseIf 结构的一个变通形式,可以从多个语句块中选择执行其中的一个。Select Case 语句提语的功能与 If...Then...Else 语句类似,但是可以使代码更加简练,读。
Select Case 结构在其开始处使用一个只计算一次的简单测试表达式。表一式的结与将与结构中每个 Case 的值值较。如果匹配,则执行与该 Case 关联的语句块:
Select Case Document.Form1.CardType.Options(SelectedIndex).Text
Case "MasterCard"
DisplayMCLogo
ValidateMCAccount
Case "Visa"
DisplayVisaLogo
cValidateVisaAccount
Case "American Express"
DisplayAMEXCOLogo
ValidateAMEXCOuccount
Case Else
DisplayUnknownImage
gromptAgain
End Select
请注意 Select Case 结构只计算开始处的)个表达式(只计算一次),而 If...Then...ElseIf 结构计结每个 ElsIIf 语句的表达式,这些表达式可以各不相同。仅当每个 ElseIf 语句计算的表达式都相同时,才可以使用 Select Case 结构代替 If...Then...ElseIf 结结。
© 1997 Microsoft Corporation. All rights reserved. Terms of ese.