我有一个这样的循环,但同时我需要避开一些细胞。
For Each qcell In oNOcells
' here I would like to scape some of the cells under specific condition,
Next qcell
我怎样才能抵消 qcell 并要求它在 qcell 之后去 3 个单元格?
修订代码
以下子步骤通过一系列单元格。如果当前单元格中的值满足指定条件,则代码跳过该单元格和指定数量的附加单元格;否则,它会在当前单元格中执行某些操作。
例如,代码中的范围设置为 A1:A20,指定的条件是单元格包含值 2。
请注意,每次在范围内满足指定条件时,代码都不会向前跳过,因为跳过的单元格中的那些单元格不会触发另一个向前跳过。对于不满足条件且未被跳过的单元格,子程序会向立即窗口打印一条消息。
要调整跳过的单元格数量,请调整变量 num_of_cells_to_skip 的值。
Sub skip_ahead()
Dim oNoCells As Range
Dim i As Long
Dim count As Long
Dim skip_forward As Long
Set oNoCells = Range("A1:A20")
i = 1
count = oNoCells.Rows.count
num_of_cells_to_skip = 2
Do While i <= count
If oNoCells.cells(i, 1).Value = 2 Then
i = i + num_of_cells_to_skip + 1
Else
Debug.Print "do something at cell " & oNoCells.cells(i, 1).Address
i = i + 1
End If
Loop
End Sub