Please try this one
Sub test()
Dim myAreas As Areas, i As Long, ii As Long, n As Long, rng As Range, wb as workbook
Application.ScreenUpdating = False
Set wb = activeworkbook
With Workbooks.Add
wb.Sheets("Packet Detail Report").Copy before:=.Sheets(1)
Set myAreas = .Sheets("Packet Detail Report").Columns(1).SpecialCells(2).Areas
For i = 1 To myAreas.Count
If myAreas(i)(1).Font.Bold Then
Set rng = myAreas(i).Resize(myAreas(i).Count + 1)
ii = 1
Do While i + ii <= myAreas.Count
If myAreas(i + ii)(1).Font.Bold Then Exit Do
Set rng = Union(rng, myAreas(i + ii))
ii = ii + 1
Loop
n = n + 1
If n > .Sheets.Count - 1 Then .Sheets.Add after:=.Sheets(.Sheets.Count)
With .Sheets(.Sheets.Count)
.Name = "Sheet" & n
myAreas.Parent.Parent.Cells.Copy .Cells(1)
.Cells.ClearContents
rng.EntireRow.Copy .Cells(1)
End With
i = i + ii - 1: Set rng = Nothing
End If
Next
End With
myAreas.Parent.Parent.Select
Application.ScreenUpdating = True
End Sub
Bookmarks