在VBA中,要条件删除行,你可以使用`Range`对象的`Delete`方法。以下是一个基本的示例,它将根据特定的条件删除工作表中的行:
```vba
Sub DeleteRowsBasedOnCondition()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1") ' 假设你要操作的是"Sheet1"
Dim lastRow As Long
lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' 假设条件在列A中
Dim i As Long
For i = lastRow To 2 Step -1 ' 从最后一行向上循环,避免删除行后索引变化
If ws.Cells(i, 1).Value = "特定条件" Then ' 假设我们要删除满足条件"特定条件"的行
ws.Rows(i).Delete
End If
Next i
End Sub
```
在这个例子中,我们假设你想要删除第一列(假设为列A)中值为"特定条件"的行。这段代码会从工作表的最后一行开始向上检查每一行,如果找到符合条件的行,就使用`Delete`方法删除该行。
请根据你的具体需求调整列号和条件。例如,如果你想要删除第二列(假设为列B)中值为特定数字的行,只需将`ws.Cells(i, 1).Value`更改为`ws.Cells(i, 2).Value`,并将条件更改为你需要的值。
注意,在删除行时,从工作表的最后一行开始向上循环是很重要的,这样可以避免在删除行时因为索引变化而导致错误。