版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、使用循环重复执行代码 循环用于重复执行一组语句。循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句。在 VBScript 中可使用下列循环语句: Do.Loop: 当(或直到)条件为 True 时循环。 While.Wend: 当条件为 True 时循环。 For.Next: 指定循环次数,使用计数器重复运行语句。 For Each.Next: 对于集合中的每项或数组中的每个元素,重复执行一组语句。 使用 Do 循环 可以使用 Do.Loop 语句多次(次数不定)运行语句块。当条件为 True 时或条件变为
2、 True 之前,重复执行语句块。 当条件为 True 时重复执行语句 While 关键字用于检查 Do.Loop 语句中的条件。有两种方式检查条件:在进入循环之前检查条件(如下面的 ChkFirstWhile 示例);或者在循环至少运行完一次之后检查条件(如下面的 ChkLastWhile 示例)。在 ChkFirstWhile 过程中,如果 myNum 的初始值被设置为 9 而不是 20,则永远不会执行循环体中的语句。在 ChkLastWhile 过程中,循环体中的语句只会执行一次,因为条件在检查时已经为 False。 Sub ChkFirstWhile() Dim counter, my
3、Num counter = 0 myNum = 20 Do While myNum 10 myNum = myNum - 1 counter = counter + 1 Loop MsgBox 循环重复了 & counter & 次。 End Sub Sub ChkLastWhile() Dim counter, myNum counter = 0 myNum = 9 Do myNum = myNum - 1 counter = counter + 1 Loop While myNum 10 MsgBox 循环重复了 & counter & 次。 End Sub
4、重复执行语句直到条件变为 TrueUntil 关键字用于检查 Do.Loop 语句中的条件。有两种方式检查条件:在进入循环之前检查条件(如下面的 ChkFirstUntil 示例);或者在循环至少运行完一次之后检查条件(如下面的 ChkLastUntil 示例)。只要条件为 False,就会进行循环。 Sub ChkFirstUntil() Dim counter, myNum counter = 0 myNum = 20 Do Until myNum = 10 myNum = myNum - 1 counter = counter + 1 Loop MsgBox 循环重复了 & co
5、unter & 次。 End Sub Sub ChkLastUntil() Dim counter, myNum counter = 0 myNum = 1 Do myNum = myNum + 1 counter = counter + 1 Loop Until myNum = 10 MsgBox 循环重复了 & counter & 次。 End Sub退出循环 Exit Do 语句用于退出 Do.Loop 循环。因为通常只是在某些特殊情况下要退出循环(例如要避免死循环),所以可在 If.Then.Else 语句的 True 语句块中使用 Exit Do 语句。如果条
6、件为 False,循环将照常运行。 在下面的示例中,myNum 的初始值将导致死循环。If.Then.Else 语句检查此条件,防止出现死循环。 Sub ExitExample() Dim counter, myNum counter = 0 myNum = 9 Do Until myNum = 10 myNum = myNum - 1 counter = counter + 1 If myNum 10 Then Exit Do Loop MsgBox 循环重复了 & counter & 次。 End Sub使用 While.Wend While.Wend 语句是为那些熟悉其用
7、法的用户提供的。但是由于 While.Wend 缺少灵活性,所以建议最好使用 Do.Loop 语句。 使用 For.Next For.Next 语句用于将语句块运行指定的次数。在循环中使用计数器变量,该变量的值随每一次循环增加或减少。 例如,下面的示例将过程 MyProc 重复执行 50 次。For 语句指定计数器变量 x 及其起始值与终止值。Next 语句使计数器变量每次加 1。 Sub DoMyProc50Times() Dim x For x = 1 To 50 MyProc Next End Sub 关键字 Step 用于指定计数器变量每次增加或减少的值。在下面的示例中,计数器变量 j
8、 每次加 2。循环结束后,total 的值为 2、4、6、8 和 10 的总和。 Sub TwosTotal() Dim j, total For j = 2 To 10 Step 2 total = total + j Next MsgBox 总和为 & total & 。 End Sub 要使计数器变量递减,可将 Step 设为负值。此时计数器变量的终止值必须小于起始值。在下面的示例中,计数器变量 myNum 每次减 2。循环结束后,total 的值为 16、14、12、10、8、6、4 和 2 的总和。 Sub NewTotal() Dim myNum, total For myNum = 16 To 2 Step -2 total = total + myNum Next MsgBox 总和为 & total & 。 End Sub Exit For 语句用于在计数器达到其终止值之前退出 For.Next 语句。因为通常只是在某些特殊情况下(例如在发生错误时)要退出循环,所以可以在 If.Then.Else 语句的 True 语句块中使用 Exit For 语句。如果条件为 False,循环将照常运行。 使用 For Each.Next For Each.Next 循环与 For.Next 循环类似。For
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年滁州市凤阳县中小学(公益一类)公开招募就业见习人员(第二批)17人考前冲刺试卷【黄金题型】附答案详解
- 2026上海交通大学集成电路学院(陈长鑫老师团队)招聘科研人员1人笔试题库(典优)附答案详解
- 客户满意试题全解与对应答案分析
- 滨州水务发展集团有限公司笔试题目及答案
- 淄博能源集团2026年招聘笔试题目答案
- 有关明朝小说的试题及答案
- 2026年玉林市玉州区政务服务中心(窗口人员)招聘笔试备考题库及答案详解
- 2026年鄂州市鄂城区政务服务中心(窗口人员)招聘笔试模拟试题及答案详解
- 2026年德阳市旌阳区政务服务中心(窗口人员)招聘考试参考题库及答案详解
- 2026年佛山市南海区政务服务中心(窗口人员)招聘笔试备考题库及答案详解
- 2026海南农村商业银行招聘1人(202607)笔试备考试题及答案详解
- 2026年安徽安庆经开区老峰镇村(社区)专职工作人员招聘考试试卷-含答案解析
- 工程结算中工程款抵房款审批流程
- 2026年河南省中考英语试题(含答案和音频)
- 2026年河南省中考英语试卷(含答案)
- 2026年战士留疆考试真题及答案解析
- 2026年贵州高考物理真题解析含答案
- 10KV高配运行管理规定培训课件
- 江西省南昌市2026届高三年级下学期四月检测(二模)生物试题
- 重庆交通开投集团招聘笔试题库2026
- 2026中国联通内蒙古分公司招聘10人建设笔试参考题库及答案解析
评论
0/150
提交评论