打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
使用 Do...Loop 语句的事例(VBA)

可以使用 Do...Loop 语句去运行语句的块,而它所用掉的时间是不确定的。当条件为 True 或直到条件变成 True 时,此语句会一直重复。

直到条件为 True 时重复语句

当使用 While 关键字去检查 Do...Loop 语句中的条件时,可以有两种方法。可以在进入循环之前检查条件式,也可以在循环至少运行一次之后才检查条件式。

在下面的 ChkFirstWhile 过程中,在进入循环之前检查条件。如果将 myNum 的值由 20 替换成 9,则循环中的语句将永远不会运行。 在ChkLastWhile 过程中,在条件变成 False 之前循环中的语句只执行一次。

Sub ChkFirstWhile() counter = 0 myNum = 20 Do While myNum > 10 myNum = myNum - 1 counter = counter 1 Loop MsgBox 'The loop made ' & counter & ' repetitions.'End SubSub ChkLastWhile() counter = 0 myNum = 9 Do myNum = myNum - 1 counter = counter 1 Loop While myNum > 10 MsgBox 'The loop made ' & counter & ' repetitions.'End Sub

直到条件变成 True 才重复语句

当使用 Until 关键字去检查 Do...Loop 语句中的条件时,可以使用两种方法。可以在进入循环之前检查条件(如同 ChkFirstUntil 过程所示),也可以在循环至少运行一次之后才检查条件(如同 ChkLastUntil 过程所示)。当条件仍然为 False 时,循环继续。

Sub ChkFirstUntil() counter = 0 myNum = 20 Do Until myNum = 10 myNum = myNum - 1 counter = counter 1 Loop MsgBox 'The loop made ' & counter & ' repetitions.'End SubSub ChkLastUntil() counter = 0 myNum = 1 Do myNum = myNum 1 counter = counter 1 Loop Until myNum = 10 MsgBox 'The loop made ' & counter & ' repetitions.'End Sub

从循环内退出 Do...Loop 语句

可以使用 Exit Do 语句来退出 Do...Loop 语句。例如,为了退出无穷循环,可以在 If...Then...Else 语句或是 Select Case 语句的 True 语句块中使用 Exit Do 语句。如果条件为 False,则循环会象通常那样运行。

在下面的示例中,myNum 被赋予一个会造成无穷循环的值。而 If...Then...Else 语句会去检查这个情况然后退出,以避免无穷循环。

Sub ExitExample() counter = 0 myNum = 9 Do Until myNum = 10 myNum = myNum - 1 counter = counter 1 If myNum < 10 Then Exit Do Loop MsgBox 'The loop made ' & counter & ' repetitions.'End Sub

注意 可以按 ESC 或 CTRL BREAK 键来终止无穷循环。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
VBScript循环语句
跟烟花入门VBA之18:Do…Loop循环 (二)
(十二)Do.....Loop循环控制语句
ASP脚本循环语句
vb.net的循环语句
vba遍历字符串_VBA中三种循环语句的讲解及实例应用_weixin
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服