在写序列模型的时候需要跳出内部循环,回到大循环中。这点在金字塔语言中做不到。所以要学VBA。
guotx2010能借你几分钟时间帮我写个简单的例子吗?
有时候,你并不想等到循环自己结束,可能是用户输入了错误的数据,过程遇到了错误或者可能是任务已经完成并且没有必要作更多的循环。你可以提前跳出循环,而不必等到条件正常结束。VB有两种Exit语句:
n Exit For语句用来提前退出For…Next或者For Each…Next循环
n Exit Do语句立即退出任何VBA Do 循环
下面的过程示范如何使用Exit For语句提前跳出For Each…Next循环:
1. 在当前模块里输入下列过程:
Sub EarlyExit()
Dim myCell As Range
For Each myCell in Range("A1:H10")
If myCell.Value = "" Then
myCell.Value = "empty"
Else
Exit For
End If
Next myCell
End Sub
这个是经常遇到的,其实很简单:
For i=1 to 100
For j=1 to 90
'正常的代码处理
...
'判断是否要退出内层循环,如果是就使用Exit For
If 条件成立 then
Exit For '如果循环体不是For而是Do While,则使用Exit Do
End if
Next
'退出之后,你可以使用Application.msgout j,显示此时的j的值就知道是不是提前退出的,如果等于91说明不是提前退出,否则就是提前退出
Application.msgout j
Next
万分感谢两位高人赐教。