'凑了一个,看上去应该差不多的 Option Explicit Sub abc() Dim i, j Application.ScreenUpdating = False For i = Cells(Rows.Count, "b").End(xlUp).Row To 1 Step -1 If InStr(UCase(Cells(i, "a").Value), "CASE") = 1 Then For j = i - 1 To 1 Step -1 If InStr(UCase(Cells(j, "a").Value), "PACK") = 1 Then Rows(j).Resize(i - j).Delete i = j: Exit For End If Next End If Next Application.ScreenUpdating = True End Sub
Sub 删除前7行() '---------------------------------------------------- '程序功能:每12行为一个轮回,每个轮回体内部前7行删除 Dim i% For i = Range("B65536").End(xlUp).Row - 11 To 1 Step -12 Rows(i).Resize(7).Delete Next End Sub
'假设这是你的数据,运行完代码后,是删是留.你自已来. '代码: Sub 选择() Dim rg As Range Set rg = Range("1:7") For i = 13 To ActiveSheet.UsedRange.Rows.Count Step 12 Set rg = Union(rg, Range(i & ":" & i + 6)) Next i rg.Select End Sub