我有以下两列(简化)
Bond BMW
Equity Amazon
Bond Netflix
Bond Uber
Equity Google
我想要一个基本上通过第一列并删除该行的代码,如果它是
Equity
.我的想法(就for循环而言):
for i = 1 to 5
if ws.Cells(i,1).Value = "Bond" Then
Else
ws.Rows(i).Select
End If
Next i
Selection.Delete
End Sub
我注意到的问题是只有最后一个要选择的单元格被删除。我会认为我在循环中选择的所有单元格都会被选中。是否有特定的方法来选择多个。 (
Union
在这种情况下不起作用,因为列表将是动态的)。
最佳答案
通常在删除行时,您会从底部开始向上工作。
Sub Button2_Click()
Dim LstRw As Long, x
LstRw = Cells(Rows.Count, "A").End(xlUp).Row
For x = LstRw To 1 Step -1
If Cells(x, "A").Value = "Equity" Then
Cells(x, "A").EntireRow.Delete
End If
Next x
End Sub
关于excel - 使用 IF 时的多项选择以便在最后删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52925553/