excel VBA删除包含文本的行

v09wglhw  于 2023-08-08  发布在  其他
关注(0)|答案(2)|浏览(118)

我已经准备好VBA代码删除包含单词“删除”的行。VBA正在工作,但现在,我不希望VBA删除第8行,即使它写了删除。请协助。

Sub RectangleRoundedCorners6_Click()
    Last = Cells(Rows.Count, "A").End(xlUp).Row
    Range("A8:A9").Select
Range("A9").Activate
    For i = Last To 1 Step -1
        If (Cells(i, "A").Value) = "Delete" Then
            Cells(i, "A").EntireRow.Delete
        End If
    Next i
End Sub

字符串


的数据
我已经准备好VBA代码删除包含单词“删除”的行。VBA正在工作,但现在,我不希望VBA删除第8行,即使它写了删除。请协助。当我点击删除按钮,我希望它删除下面的行包含“删除”除了第8行。


sc4hvdpw

sc4hvdpw1#

你只需要调整If语句:

Sub RectangleRoundedCorners6_Click()
    Last = Cells(Rows.Count, "A").End(xlUp).Row
    Range("A8:A9").Select
Range("A9").Activate
    For i = Last To 1 Step -1
        If (Cells(i, "A").Value) = "Delete" And i <> 8 Then
            Cells(i, "A").EntireRow.Delete
        End If
    Next i
End Sub

字符串

yquaqz18

yquaqz182#

您的代码从工作表的最后一行一直循环到工作表的第1行,即此行中的指令:

For i = Last To 1 Step -1

字符串
如果要在工作表的第9行停止,请将该行更改为9:

Sub RectangleRoundedCorners6_Click()
    Last = Cells(Rows.Count, "A").End(xlUp).Row
    Range("A8:A9").Select
Range("A9").Activate
    For i = Last To 9 Step -1
        If (Cells(i, "A").Value) = "Delete" Then
            Cells(i, "A").EntireRow.Delete
        End If
    Next i
End Sub

相关问题