四时宝库

程序员的知识宝库

EXCEL退出DO LOOP循环语句|until、while

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


还是前面讲的例子:



在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下面的语句,是先执行后判断


实际应运举例:




前面章节讲过的例子,当时我们用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

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接