VBA 对于循环
示例
该For循环用于将代码的封闭部分重复给定的次数。以下简单示例说明了基本语法:
Dim i as Integer 'Declaration of i For i = 1 to 10 'Declare how many times the loop shall be executed Debug.Printi 'The piece of code which is repeated Next i 'The end of the loop
上面的代码声明一个Integeri。在For1和10之间的每一个值,以循环受让人i执行,然后Debug.Printi-即代码打印数字1到10来即时窗口。请注意,循环变量由Next语句增加,即在执行封闭代码之后而不是在执行之前。
默认情况下,每次循环执行时,计数器将增加1。但是,Step可以指定a来将增量更改为函数的文字或返回值。如果起始值,结束值或Step值是浮点数,则将四舍五入为最接近的整数值。Step可以是正值或负值。
Dim i As Integer For i = 1 To 10 Step 2 Debug.Printi 'Prints 1, 3, 5, 7, and 9 Next
通常For,在已知循环开始执行多少次执行封闭代码的情况下将使用循环(否则,使用aDo或While循环可能更合适)。这是因为退出条件在第一次进入循环后是固定的,如以下代码所示:
Private Iterations As Long 'Module scope Public Sub Example() Dim i As Long Iterations = 10 For i = 1 To Iterations Debug.PrintIterations 'Prints 10 through 1, descending. Iterations = Iterations - 1 Next End Sub
一个For循环可以及早与退出ExitFor声明:
Dim i As Integer For i = 1 To 10 If i > 5 Then Exit For End If Debug.Printi 'Prints 1, 2, 3, 4, 5 before loop exits early. Next