删除不等于combobox值的行?

我试图删除不等于所选的combobox值的行。 我有下面的代码,但我得到一个运行时错误424对象所需。 任何人都可以协助

Dim wkss As Worksheet, wkJob As Worksheet Dim i As Long Set wkss = Sheets("TempWs6") Set wsJob = Sheets("Job") wkss.Select For i = Cells(Rows.Count, 10).End(xlUp).Row To 1 Step -1 If Cells(i, 10) <> wsJob.ComboBox1.Value Then wkss.Rows(i).Row.Delete End If Next i 

非常感谢!

要删除一行,你需要使用EntireRow

wkss.Rows(i).EntireRow.Delete应该这样做!

(对于它的价值,删除整个列也是一样,使用EntireColumn.Delete

编辑:我们通过用With语句分配出身地来清除范围和select。

 Dim wkss As Worksheet, wkJob As Worksheet Dim i As Long Set wkss = Sheets("TempWs6") Set wsJob = Sheets("Job") With wkss For i = .Cells(.Rows.Count, 10).End(xlUp).Row To 1 Step -1 If .Cells(i, 10) <> wsJob.ComboBox1.Value Then .Rows(i).EntireRow.Delete End If Next i End With 

.Cells([...]).Row to 1 Step -1这样做:从最后一行开始(你从...(xlUp).Row ),运行下面的代码,然后“step”一行,然后再次运行,直到你到达第1行。