经常地,当编写代码时,我们希望将一段代码执行若干次,我们可以在代码中使用循环语句来完成这项工作。

循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句。

For...Next:指定循环次数,使用计数器重复运行语句

Do...Loop:当条件为 true 或者直到条件为 true 时,运行循环

While…Wend:当条件为True时循环

For Each...Next对于集合中的每项或数组中的每个元素,重复执行一组语句

---------------------------------------- 分割线 -------------------------------------------------------

For...Next 语句

指定循环次数,使用计数器重复运行语句,语法结构如下:

For counter = start To end [Step step]  'counter 用做循环计数器的数值变量, start:counter的初值, end:counter的终值, step:counter的步长
[statements]
[Exit For] '退出循环
[statements]
Next
Dim Count:Count =  '定义一个变量,并赋值为0
For i = To '循环10次 ,For 语句规定计数变量以及它的开始值和结束值
Count = Count +
Next 'Next 语句会以 1 作为步长来递增变量i
MsgBox Count '输出10 ' 退出循环:Exit For 语句用于在计数器达到其终止值之前退出 For...Next 语句。 Dim Count:Count = '定义一个变量,并赋值为0
For i = To step '循环10次,步长为2,通过使用 Step 关键词,我们可以规定计数变量递增或递减的步进值
Count = Count +
If Count = Then '当变量Count的值为3时,退出当前循环
Exit For '退出循环
End If
Next
MsgBox Count '输出3

Do 循环  当(或直到)条件为True时循环

重复执行语句直到条件变为True

Dim Count:Count =  '定义一个变量
Do Until Count = '直到Count变量为0时,否则一直循环
MsgBox Count
Count = Count -
Loop
MsgBox "循环结束" Dim Count:Count = '定义一个变量
Do
MsgBox Count
Count = Count -
Loop Until Count = '直到Count变量为0时,否则一直循环
MsgBox "循环结束" 当条件变为True之前重复执行某语句块 Dim Count:Count = '定义一个变量
Do While Count <> '当Count变量为0时,停止循环
MsgBox Count
Count = Count -
Loop
MsgBox "循环结束" Dim Count:Count = '定义一个变量
Do
MsgBox Count
Count = Count -
Loop While Count <> '当Count变量为0时,停止循环
MsgBox "循环结束" Exit Do 语句用于退出 Do...Loop 循环
Dim Count:Count = '定义一个变量
Do While Count <> '当Count变量为0时,停止循环
MsgBox Count
Count = Count -
If Count = Then '判断Count变量值是否为2,如果是则退出循环
Exit Do
End If
Loop
MsgBox "循环结束"

While…Wend  当条件为True时循环

Dim Count:Count =  '定义一个变量
While Count <> '当Count变量值不等于0,一直循环
MsgBox Count
Count = Count -
Wend
MsgBox "循环结束" While…Wend 没有Exit语句,从头一直循环到尾,若要在中途退出,则需用Do…Loop语句

For Each...Next 语句

For Each...Next 不是将语句运行指定的次数,而是对于数组中的每个元素或对象集合中的每一项重复一组语句。这在不知道集合中元素的数目时非常有用。

Dim Dics '定义一个变量
Set Dics = CreateObject("Scripting.Dictionary") '定义一个Dictionary对象
Dics.Add "", "Athens" '为Dictionary对象赋值
Dics.Add "", "Belgrade"
Dics.Add "", "Cairo"
For Each Dic in Dics
MsgBox Dics.Item(Dic) '循环遍历,且输出Dictionary键值
Next

VBS基础篇 - 循环的更多相关文章

  1. VBS基础篇 - 循环语句(3) - For...Next

    VBS基础篇 - 循环语句(3) - For...Next   指定循环次数,使用计数器重复运行语句,语法结构如下: 1 2 3 4 5 For counter = start To end [Ste ...

  2. VBS基础篇 - 循环语句(4) - For Each...Next

    VBS基础篇 - 循环语句(4) - For Each...Next   For Each...Next 循环与 For...Next 循环类似.For Each...Next 不是将语句运行指定的次 ...

  3. VBS基础篇 - 对象(6) - Folder对象

    VBS基础篇 - 对象(6) - Folder对象   描述:提供对文件所有属性的访问,从FSO对象的GetFile方法获得 使用Folder对象 要用Folder对象模型来编程必须先用FSO对象的G ...

  4. VBS基础篇 - 杂项 - Sendkeys

    VBS基础篇 - 杂项 - Sendkeys   模拟键盘操作,将一个或多个按键指令发送到指定Windows窗口来控制应用程序运行 其使用格式为:object.SendKeys(string) obj ...

  5. VBS基础篇 - 过程(sub 与 Function)

    VBS基础篇 - 过程(sub 与 Function) 在VBscript中,有两种procedure:Sub procedure与Function procedure Sub过程:是包含在 Sub  ...

  6. VBS基础篇 - VBScript过程

    VBS基础篇 - VBScript过程   在 VBScript 中,过程被分为两类:Sub 过程和 Function 过程. Sub过程 Sub 过程是包含在 Sub 和 End Sub 语句之间的 ...

  7. VBS基础篇 - 对象(1) - Class对象

    VBS基础篇 - 对象(1) - Class对象   相信对JAVA有一定了解的朋友一定对类这个名词不陌生,但是大家可能没有想过在VBS中使用Class类吧,其实Class类在自动化测试中是相当常用的 ...

  8. VBS基础篇 - 对象(3) - FileSystemObject对象

    VBS基础篇 - 对象(3) - FileSystemObject对象   文件系统是所有操作系统最重要的部分之一,脚本经常会需要对文件及文件夹进行访问和管理,在Vbs中对桌面和文件系统进行访问的顶级 ...

  9. VBS基础篇 - 对象(5) - File对象

    VBS基础篇 - 对象(5) - File对象   描述:提供对文件所有属性的访问,从FSO对象的GetFile方法获得. 使用File对象        要用File对象模型来编程必须先用FileS ...

随机推荐

  1. 【转】windows 如何查看端口占用情况?

    开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选&qu ...

  2. html+CSS--水平居中设置(定宽块状元素)

    来源:http://www.imooc.com/code/4336 当被设置元素为 块状元素 时用 text-align:center 就不起作用了,这时也分两种情况:定宽块状元素和不定宽块状元素. ...

  3. 百度地图LBS开放平台AK一直没有用

    http://api.map.baidu.com/geoconv/v1/?coords=114.21892734521,29.575429778924;114.21892734521,29.57542 ...

  4. asp.net zip 压缩传输

    在实际生产中,比如使用xml json 等传输大量数据的时候,有时候会出现等待时间过长,这里分享一个压缩传输的方法 首先到网上去下载一个 ICSharpCode.SharpZipLib.dll 的dl ...

  5. sql获取exec('')的返回值

    ) ) select @sql=('select @a=cNumber+1 from VoucherHistory where CardNumber='''+@CardNumber+'''') exe ...

  6. HTML页面背景音乐控制

    //兼容ie,chrome,safari. <object id="AudioID" type="application/x-mplayer2" data ...

  7. BaseAdapter&ArrayAdapter在ListView中应用

    一:BaseAdapter:共同实现的基类的适配器,是ArrayAdapter SimpleAdapter等的父类, 一般用于比较复杂的ListView,扩展性强. 详细信息可查看谷歌官方API:ht ...

  8. 北大ACM(POJ1003-Hangover)

    Question:http://poj.org/problem?id=1003问题点:水题. Memory: 220K Time: 0MS Language: C++ Result: Accepted ...

  9. 集合框架学习之Guava Collection

    开源工具包: Guava : Google Collection Apache:Commons Collecton 1.1 Google Collections Guava:google的工程师利用传 ...

  10. Revit二次开发-根据Element获取系统族信息

    Element element = doc.getElement(elementId); Autodesk.Revit.DB.Parameter familyType = element.get_Pa ...