经常地,当我们编写代码时,我们需要根据不同的判断执行不同操作,我们可以使用条件语句完成这个工作。
If...Then...Else
在下面的情况中,您可以使用 If...Then...Else 语句:
- 在条件为 true 时,执行某段代码
- 选择两段代码之一来执行时
dim a '定义一个变量 a = 100 if a < 200 then a = 300 '若i<200,则对i重新赋值 msgbox a '输出的值为300
要运行多行代码,必须使用多行(或块)语法,多行(或块)语法包含 End If 语句
dim a,b,c a=inputbox("请输入a的值:") b=100 c=200 if a<200 then '条件为 True 时运行某一语句块,条件为 False 时运行另一语句块 msgbox b else msgbox c end if
对多个条件进行判断,可以添加任意多个 ElseIf 子句以提供多种选择
dim a a=inputbox("请输入a的值:") if a<200 then '条件为 True 时运行某一语句块,条件为 False 时运行另一语句块 msgbox "执行语句1" elseif a=200 then msgbox "执行语句2" elseif a>200 then msgbox "执行语句3" end if
Select Case结构提供了 If...Then...ElseIf结构的一个变通形式,可以从多个语句块中选择执行其中的一个。Select Case语句提供的功能与 If...Then...Else语句类似,但是可以使代码更加简练易读。
'Select Case 结构在其开始处使用一个只计算一次的简单测试表达式。表达式的结果将与结构中每个 Case 的值比较,如果匹配,则执行与该Case 关联的语句块。 dim a a=inputbox("随便填写一个数") a=int(a) select case a case 6,7,8,9 msgbox("还行") case 10,11,12,13,14,15 msgbox("一般") case 16,17,18,19,20 msgbox("可以了") case 21,22,23,24,25 msgbox("无敌了") case else msgbox("做梦呢") end select
注意: Select Case结构只计算开始处的一个表达式(只计算一次),而 If...Then...ElseIf 结构计算每个 ElseIf 语句的表达式,这些表达式可以各不相同。仅当每个 ElseIf 语句计算的表达式都相同时,才可以使用 Select Case 结构代替If...Then...ElseIf 结构。