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

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


  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值