VBA循环:如果单元格包含特定值,则删除包含该值的行以及下面的3行
嗨,我想通过一个长的报告,删除删除循环。
一般的逻辑是这样的:如果脚本在列B1中find值“DELETE”,那么它应该删除范围“A1:I4”。 我有下面的脚本,显然不工作。 我正在尝试使用“X”variables找出跨多列的范围的正确语法。 任何帮助,将不胜感激!
我有以下循环:
Sub RemoveDel() lastrow = Cells(Rows.Count, "B").End(xlUp).Row For x = 1 To lastrow If Range("B" & x).Value = "DELETE" Then Range("A" & x:"I" & x + 4)).ClearContents Next x End Sub
我想你只是为了解决这个问题,把冒号放在引号中。
If Range("B" & x).Value = "DELETE" Then Range("A" & x & ":I" & x + 4)).ClearContents
编辑
第一位也可以使用“单元格”而不是“范围”。
If Cells(x,"B").Value = .....
这适用于我:
Sub RemoveDel() lastrow = Cells(Rows.Count, "B").End(xlUp).Row For x = 1 To lastrow If Range("B" & x).Value = "DELETE" Then Range("A" & x & ":I" & x + 4).ClearContents Next x End Sub