Sub Test1()
Dim a As Integer
For a = 1 To 3 Step 1 'STEP POSITIVE ONE
Next
Debug.Print a
End Sub
Run Code Online (Sandbox Code Playgroud)
收益率为4,如预期.
Sub Test2()
Dim a As Integer
For a = 1 To 3 Step -1 'STEP NEGATIVE ONE
Next
Debug.Print a
End Sub
Run Code Online (Sandbox Code Playgroud)
为什么踩到"外部"循环会导致1?
为什么VBA步入Test1的界限,但是当它对于Test2的超出部分时停止踩踏?
编辑:除了上述,运行For a = 1 To 1 Step 1结果为2,For a = 1 To 1 Step -1结果为0.
For a = 1 To 2 Step 1结果为3,但For a = 1 To …