vba for多重循环举例及如何退出某个嵌套循环 您所在的位置:网站首页 vba跳出for vba for多重循环举例及如何退出某个嵌套循环

vba for多重循环举例及如何退出某个嵌套循环

2023-08-12 19:09| 来源: 网络整理| 查看: 265

  在VBA当中,同样和编程语言一样,有着for循环语句。其语法为如下:

  For To [step 步长]  [指令]   [Exit For]  [指令]  Next [计数器]

  从开始到结束,反复执行For和Next之间的指令块,除非遇到Exit For语句,将提前跳出循环。其中,步长和Exit For语句以及Next后的计数器均为可选项。

  一般情况下,我们只使用到一个For语句,如果你使用多个For语句,那么就是For语句的嵌套或多重使用了。

  简单的For语句举例如下:

  For k = 1 To 6    MsgBox ("现在的N值为:" & k)  Next k

  下面我们给大家介绍多重for语句循环的使用,其中,包括如何退出嵌套语句中的某一个多多重循环。

  For…Next循环中可以再包含For…Next循环,即For…Next循环可以嵌套使用。

  简单的三重for语句为:

  Dim m  Dim n  Dim k  m = 1  n = 1  k = 1  For m = 1 To 6      For n = 1 To 6             For k = 1 To 6                              Next k      Next n  Next m

  下面,我们来学习如何在多重循环中退出循环跳转至某个循环:要想学习多重循环中如何退出某个循环,我们可以跟踪并输出某个变量的值,就可以追踪到循环运行到哪个位置并退出循环了。

  一、退出第三个循环

  Dim m  Dim n  Dim k  m = 1  n = 1  k = 1  For m = 1 To 6  '第一个循环      For n = 1 To 6  '第二个循环              For k = 1 To 6  '第三个循环                    If (k = 3) Then                     Exit For                   End If              Next k      Next n  Next m  MsgBox ("大众计算机提示您:现在的m值为:" & m & "现在的n值为:" & n & "现在的k值为:" & k)

  此时的m为7、n为7,而k则为3,说明,第一第二个循环完全运行,而第三个循环每次都只运行到k等于3就退出第三个循环了,第三个循环没有完全运行。

  二、退出第二个循环

  Dim m  Dim n  Dim k  m = 1  n = 1  k = 1  For m = 1 To 6  '第一个循环      For n = 1 To 6  '第二个循环          If (n = 3) Then            Exit For            For k = 1 To 6  '第三个循环            Next k          End If      Next n  Next m  MsgBox ("大众计算机提示您,现在的m值为:" & m & "现在的n值为:" & n & "现在的k值为:" & k)

  这个时候,m的值为7,n的值为3,而k的值为1,在这个循环过程中,第一个循环完全执行,第二个循环只执行到n=3就不再运行,而第三个循环一直都不执行。

  三、退出第一个循环

  Dim m  Dim n  Dim k  m = 1  n = 1  k = 1  For m = 1 To 6  '第一个循环      If (m = 3) Then      Exit For      For n = 1 To 6  '第二个循环        For k = 1 To 6  '第三个循环        Next k      Next n     End If  Next m  MsgBox ("大众计算机提示您,现在的m值为:" & m & "现在的n值为:" & n & "现在的k值为:" & k)

  这个时候,m的值为3,n的值为1,而k的值为1,在这个循环过程中,第一个循环只执行到m=3就不再执行了,而第二第三个循环,一直都没有执行。

  综上所述,上面的例子分别给大家列举了三重for循环,如何退出其中的某个循环,在此过程中,仅使用简单的Exit For语句就可以实现了,但是,难点在于,Exit For所放的位置,要配合if语句来使用,这样才起到效果,否则会导致循环嵌套的混乱。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有