while循环语句用法_EXCEL退出DO LOOP循环语句|until、while

本文介绍VBA中使用Until和While语句控制Do Loop循环的方法,通过实例对比不同控制方式的特点,如先判断后执行和先执行后判断的区别,并给出实际应用案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

退出某语句,我们前面都是用exit,退出程序用end,exit可用于退出for next,也可用于do loop循环。今天我们来学习退出DO LOOP语句的另外两个语句,until和while。

还是前面讲的例子:

6f2ffbc326b1b14592ed83a43a6ee9bf.gif

在A1单元格中数字累加到10:

用Until判断时语句如下:

Sub 退出循环()

Dim N%

Do Until N > 9

N = N + 1

Range("A1") = N

Loop

End Sub

Until N > 9, 意思时直到N>9才停止循环,先判断N是否大于9,不大于就执行,大于就停止。所以是先判断后执行

用while判断时语句如下:

Sub 退出循环1()

Dim N%

Do

N = N + 1

Range("A1") = N

Loop While N < 10

End Sub

While N < 10,意思是当N小于10时就循环DO下面的语句,是先执行后判断

实际应运举例:

62b160e27a87165955d4c04513d1cb55.png

前面章节讲过的例子,当时我们用DO LOOP来写是:

Sub 计算金额()

Dim ro%

ro = 1

Do

If Cells(ro + 1, "c") = "" Then

Exit Do

Else

ro = ro + 1

Cells(ro, "f") = Cells(ro, "d") * Cells(ro, "e")

End If

Loop

End Sub

用一个if进行判断,条件成立则exit do。

学习了今天的内容以后,我们可以对上面的代码进行修改:

Sub 计算金额()

Dim ro%

ro = 1

Do until Cells(ro + 1, "c") = ""

ro = ro + 1

Cells(ro, "f") = Cells(ro, "d") * Cells(ro, "e")

Loop

End Sub

或者是:

Sub 计算金额()

Dim ro%

ro = 1

Do

ro = ro + 1

Cells(ro, "f") = Cells(ro, "d") * Cells(ro, "e")

Loop while Cells(ro + 1, "c") <>""

End Sub

是不是比用if判断显得更加简洁呢?


转自:米宏Office

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值