问题
I need help with this code, how can I make it do delete multiple row of number? Should I use "And" function ?
Thanks
Sub remove_rows()
Dim rad As Integer
Dim Sheet1 As Worksheet
Set Sheet1 = Worksheets("Export Worksheet")
Application.ScreenUpdating = False
'Which row do u want to start with?
rad = 1
'Loop row that delete all row in Sheet1 that contain number 2265174
Do Until IsEmpty(Sheet1.Cells(rad, 1)) = True
If Sheet1.Cells(rad, 1).Value = "2265174" Then
Rows(rad).Delete
rad = rad - 1
End If
rad = rad + 1
Loop
Application.ScreenUpdating = True
End Sub
回答1:
Consider:
Sub remove_rows()
Dim rad As Long, rrad As Long
Dim Sheet1 As Worksheet
Set Sheet1 = Worksheets("Export Worksheet")
Application.ScreenUpdating = False
'Which row do u want to start with?
rrad = Sheet1.Cells(Rows.Count, 1).End(xlUp).Row
'Loop row that delete all row in Sheet1 that contain number 2265174
For rad = rrad To 1 Step -1
If Sheet1.Cells(rad, 1).Text = "2265174" Then
Rows(rad).Delete
End If
Next rad
Application.ScreenUpdating = True
End Sub
Note:
- use
Longrather thanInteger - run the loop backwards
- use
.Textto catch both numeric and text values
来源:https://stackoverflow.com/questions/52626828/vba-delete-multiple-row-in-excel