VBA循环

在某些情况下, 你需要多次执行代码块。通常, 语句以预定义的顺序执行。
编程语言提供了各种控制结构, 允许更复杂的执行路径。
循环语句使你可以多次执行一个语句或一组语句。为了充分利用Excel和VBA, 首先要知道如何有效使用循环。下图是VBA中循环语句的一般形式。

VBA循环

文章图片
例如:考虑一个数据集, 你想突出显示偶数行中的所有单元格。你可以使用VBA循环遍历范围并分析每个单元格的行号。如果它变成偶数, 则为它赋予颜色。否则, 你将其保留原样。
VBA提供了不同类型的循环来处理循环需求。下面是每个循环的简要介绍, 例如:
1. For循环:它多次执行了一系列语句, 并压缩了管理循环变量的代码。
For循环使用一个变量, 该变量循环经过指定范围内的一系列值。然后, 对VBA中的每个值执行循环内的代码。
For i = 1 to 20Total = Total + iArray(i)Next i

上面的For循环将变量i设置为具有值1、2、3, … , 20, 并且对于这些值中的每一个, 都要通过循环内的VBA代码运行。因此, 循环将数组iArray的每个成员添加到变量中。
2. For Each循环:如果组中至少存在一个元素, 并且对组中的每个元素进行迭代, 则它将执行代码块。
例如:让我们列出当前excel工作簿中的每个工作表。
For Each object_variable In group_object_variable................[Block of code]........Next object_variable

3. Do While循环:只要条件为True, 则执行该循环, 或者仅在情况为False时才重复循环。
The do...While loop statement Do ................[Block of code]........Loop while (condition)

4.执行直到循环:只要条件为False, 就会执行该循环, 或者仅在情况为True时才重复循环。
The Do...Until loop statement Do................[Block of code]Loop Until [condition]

循环控制语句
循环控制语句可以改变其正常顺序的执行。当执行离开作用域时, 将不执行循环中其余的所有语句。
【VBA循环】VBA支持以下控制语句。
  1. 退出for语句:它终止For循环语句, 并将执行转移到循环后的非实质性执行中。
  2. 退出do语句:它终止do-while语句并将执行转移到紧随循环之后的语句。

    推荐阅读