发布网友 发布时间:2022-04-26 14:53
共1个回答
热心网友 时间:2023-10-09 20:02
在VBA当中,同样和编程语言一样,有着for循环语句。其语法为如下: For <计数器=开始数> To <结束数> [step 步长][指令][Exit For][指令]Next [计数器] 从开始到结束,反复执行For和Next之间的指令块,除非遇到Exit For语句,将提前跳出循环。其中,步长和Exit For语句以及Next后的计数器均为可选项。 一般情况下,我们只使用到一个For语句,如果你使用多个For语句,那么就是For语句的嵌套或多重使用了。 简单的For语句举例如下: For k = 1 To 6MsgBox ("现在的N值为:" & k)For n = 1 To 6For n = 1 To 6 '第二个循环For k = 1 To 6 '第三个循环If (k = 3) ThenExit ForEnd IfNext kNext nNext mMsgBox ("大众计算机提示您:现在的m值为:" & m & "现在的n值为:" & n & "现在的k值为:" & k) 此时的m为7、n为7,而k则为3,说明,第一第二个循环完全运行,而第三个循环每次都只运行到k等于3就退出第三个循环了,第三个循环没有完全运行。 二、退出第二个循环 Dim mDim nDim km = 1n = 1k = 1For m = 1 To 6 '第一个循环For n = 1 To 6 '第二个循环If (n = 3) ThenExit ForFor k = 1 To 6 '第三个循环Next kEnd IfNext nNext mMsgBox ("大众计算机提示您,现在的m值为:" & m & "现在的n值为:" & n & "现在的k值为:" & k) 这个时候,m的值为7,n的值为3,而k的值为1,在这个循环过程中,第一个循环完全执行,第二个循环只执行到n=3就不再运行,而第三个循环一直都不执行。 三、退出第一个循环 Dim mDim nDim km = 1n = 1k = 1For m = 1 To 6 '第一个循环If (m = 3) ThenExit ForFor n = 1 To 6 '第二个循环For k = 1 To 6 '第三个循环Next kNext nEnd IfNext mMsgBox ("大众计算机提示您,现在的m值为:" & m & "现在的n值为:" & n & "现在的k值为:" & k) 这个时候,m的值为3,n的值为1,而k的值为1,在这个循环过程中,第一个循环只执行到m=3就不再执行了,而第二第三个循环,一直都没有执行。 综上所述,上面的例子分别给大家列举了三重for循环,如何退出其中的某个循环,在此过程中,仅使用简单的Exit For语句就可以实现了,但是,难点在于,Exit For所放的位置,要配合if语句来使用,这样才起到效果,否则会导致循环嵌套的混乱。