vbs软件编程中循环与判断指令小结

来源:互联网 发布:能直接利用geo数据库数 编辑:程序博客网 时间:2024/05/16 07:56

vbs最常用的即为Do循环、for循环和if判断,与各函数配合可实现大部分简单的功能,也可在vba中使用,十分方便。下面我将进行简单的介绍:

IF判断

格式:

If condition Then [statements][Else elsestatements]

或者,可以使用块形式的语法:

If condition Then
[statements]

[ElseIf condition-n Then
[elseifstatements
...

[Else
[elsestatements]]

End If

工作方式为:

当设置的条件(condition)成立时,执行Then后面的[statements],执行结束后跳到end if;

如果不成立,则判断ElseIf 后面的的条件(condition-n),成立时,执行Then后面的[elseifstatements],执行结束后跳到end if;

如果还不成立,则执行Else后面的[elsestatements],执行结束后跳到end if;
IF判断中的Elseif 和Else都为可选的。必选格式为If……Then……End If。

如果if条件不成立时,且没有else可判断,将跳到end if(是不会有error的)。

例1:

1
<span style="font-size: 16px; font-family: 宋体, SimSun;">Sub test0()<br>Dim t, str<br>t = InputBox("select one number(0-3)")<br>If t = 0 Then<br>MsgBox ("Zero")<br>ElseIf t = 1 Then<br>MsgBox ("One")<br>ElseIf t = 2 Then<br>MsgBox ("Two")<br>ElseIf t = 3 Then<br>MsgBox ("Three")<br>Else<br>MsgBox ("Sorry, out of range!")<br>End If<br>End Sub<br></span>

例2:

1
<span style="font-size: 16px; font-family: 宋体, SimSun;">Sub test0()<br>Dim t, str<br>t = InputBox("select one number(0)")<br>If t = 0 Then<br>MsgBox ("Zero")<br>End If<br>End Sub<br></span>

Do循环

格式:

Do [{While | Untilcondition]
[statements]
[Exit Do]
[statements]

Loop

或者:

Do
[statements]
[Exit Do]
[statements]

Loop [{While | Untilcondition]

其工作方式简而言之就是重复[statements]直到{While | Until} 中的条件成立,也可不设置条件(condition),加入if判断退出循环(例3)。

必选参数为Do……Loop,其余的缺了也没事。

例1:

1
<span style="font-size: 16px; font-family: 宋体, SimSun;">Sub test1()<br>Dim t, str<br>str = 0<br>Do<br>t = t + 1<br>str = str & "," & t<br>Loop Until t = 4<br>MsgBox (str)<br>End Sub<br></span>

输出为:0,1,2,3,4

上述可同样表达为:

例2:

1
<span style="font-size: 16px; font-family: 宋体, SimSun;">Sub test1()<br>Dim t, str<br>str = 0<br>Do While t < 4<br>t = t + 1<br>str = str & "," & t<br>Loop<br>MsgBox (str)<br>End Sub<br></span>

输出为:0,1,2,3,4

Exit Do 则可配合if判断使用,表示退出当前的do循环。

例3:

1
<span style="font-size: 16px; font-family: 宋体, SimSun;">Sub test1()<br>Dim t, str<br>str = 0<br>Do <br>t = t + 1<br>str = str & "," & t<br>If t = 4 Then<br>Exit Do<br>End If<br>Loop<br>MsgBox (str)<br>End Sub<br></span>

输出为:0,1,2,3,4

For循环

格式:

For counter = start To end [Step step]
[statements]
[Exit For]
[statements]

Next [counter]

工作方式为:

在指定步数下循环执行[statements],跟Do一样,可加入if……exit for判断退出for循环。当步数走完后跳到next。

counter 数值变量

start 为起始位置,end 为终点,step为迈的步长,step可为负数(减法)。
必选格式为for……to……next。其余为可选参数。

由于过于简单,直接跳到例子吧。

例1:

1
<span style="font-size: 16px; font-family: 宋体, SimSun;">Sub test1()<br>Dim t, str<br>str = 0<br>For t = 1 To 4<br>str = str & "," & t<br>Next<br>MsgBox (str)<br>End Sub<br></span>

输出为:0,1,2,3,4

加入step参数:

例2:

1
<span style="font-size: 16px; font-family: 宋体, SimSun;">Sub test1()<br>Dim t, str<br>str = 0<br>For t = 1 To Step 2<br>str = str & "," & t<br>Next<br>MsgBox (str)<br>End Sub<br></span>

输出为:0,1,3,5,7

当step为负数时:

例3:

1
<span style="font-size: 16px; font-family: 宋体, SimSun;">Sub test1()<br>Dim t, str<br>str = 8<br>For t = 6 To Step -2<br>str = str & "," & t<br>Next<br>MsgBox (str)<br>End Sub<br></span>

输出为:8,6,4,2,0

总结到这里,希望能帮助到大家。原文地址:http://www.927tea.com/post/14.html


0 0
原创粉丝点击