Double For-Next 带空格
Double For-Next with blanks
所以,我有这样的代码,如果单元格变成空白,它会从 i=1
移动到 i=2
并基本上重置 j 变量,但后来我意识到循环i
变量甚至在 10 之后继续。我的问题:有没有办法让它在重置 j
变量的同时移动到下一个 i
变量?我注意到要结束 j
变量,最后一个单元格必须有一个非零值。
For i = 1 to 10
For j = 9 To 29 Step 2
If wkst.Cells(i, j) = "" Then
i=i+1
j=9
Else
End If
Dest.Cells(i, j) = wkst.Cells(i, j) - wkst.Cells(i, j - 2)
Next i
Next j
将 [next i]
替换为 [next j]
。
j
嵌套在 i 循环中,因此您不能 "next" j
在其嵌套之外。
你只需要一个这样的Exit For
:
For i = 1 To 10
For j = 9 To 29 Step 2
If wkst.Cells(i, j) = "" Then Exit For
Dest.Cells(i, j) = wkst.Cells(i, j) - wkst.Cells(i, j - 2)
Next j
Next i
当遇到空白单元格时,上面的代码将退出 For Next Loop
for j
。
For Next Loop
中的变量也会自动递增,因此您不需要该部分。
这是您要尝试的吗? HTH.
所以,我有这样的代码,如果单元格变成空白,它会从 i=1
移动到 i=2
并基本上重置 j 变量,但后来我意识到循环i
变量甚至在 10 之后继续。我的问题:有没有办法让它在重置 j
变量的同时移动到下一个 i
变量?我注意到要结束 j
变量,最后一个单元格必须有一个非零值。
For i = 1 to 10
For j = 9 To 29 Step 2
If wkst.Cells(i, j) = "" Then
i=i+1
j=9
Else
End If
Dest.Cells(i, j) = wkst.Cells(i, j) - wkst.Cells(i, j - 2)
Next i
Next j
将 [next i]
替换为 [next j]
。
j
嵌套在 i 循环中,因此您不能 "next" j
在其嵌套之外。
你只需要一个这样的Exit For
:
For i = 1 To 10
For j = 9 To 29 Step 2
If wkst.Cells(i, j) = "" Then Exit For
Dest.Cells(i, j) = wkst.Cells(i, j) - wkst.Cells(i, j - 2)
Next j
Next i
当遇到空白单元格时,上面的代码将退出 For Next Loop
for j
。
For Next Loop
中的变量也会自动递增,因此您不需要该部分。
这是您要尝试的吗? HTH.