复制并粘贴下一个,不出现vba错误

时间:2018-07-26 15:47:40

标签: vba excel-vba

我有一个数据表,在我的数据范围中,列O具有两个值,新的或先前未决的,基于另一个带有公式的列。我希望遍历O列中的每个单元格,并查看哪些单元格是新的并将其粘贴为值。现在,我遇到了next without for错误。

这是我的vba代码失败的一部分。

'Values
With ActiveSheet.Range("O:O")
    Dim x As Long
    For x = 100 To 2 Step -1
         If Cells(x, 15).Value = "New" Then
         Cells(x, 15).Copy
         Cells(x, 15).PasteSpecial xlPasteValues
    Next x
 End With

1 个答案:

答案 0 :(得分:2)

您不必从底部开始到顶部,您可以计算行数,因此不必循环很长时间。

Sub Button1_Click()
    Dim Rng As Range, c As Range
    Set Rng = Range("O2:O" & Cells(Rows.Count, "O").End(xlUp).Row)
    For Each c In Rng.Cells
        If c = "New" Then c.Value = c.Value
    Next c
End Sub