Hi, I am looking for some code that would undo the below sub. The sub searches a table and pulls data of cells based on cell color. It continuously populates the Sheet "ALLmissed" and adds to the last used row in the sheet. I would like the undo to only undo the most recent update, and to keep the previous data that exists from previous times running the sub. I appreciate any help!

Sub If_Red_Copy_to_ALLmissed()
Dim icell As Range, myRange As Range
Dim endcell As Range
Dim index As Long
Set myRange = Union(Range("B3:B80"), Range("F3:F80"), Range("J3:J80"), Range("N3:N80"), Range("R3:R80"))

For Each icell In myRange
    If icell.Interior.Color = RGB(255, 0, 0) Then
        With Sheets("ALLmissed")
            index = .Cells.Find("*", Cells(Rows.Count, Columns.Count), SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row + 1
            .Cells(index, 3).Value = icell.Value
            .Cells(index, 4).Value = icell.Offset(0, 1).Value
            .Cells(index, 6).Value = icell.Offset(0, 2).Value
            .Cells(index, 11).Value = Now()
            .Cells(index, 1).Formula = "=" & index & "-1"
            .Cells(index, 2).Formula = "=WEEKNUM(NOW())-1"
            .Cells(index, 9).Formula = "=VLOOKUP($C" & index & ", enginelist!$A$2:$B$150, 2, FALSE)"
            .Cells(index, 10).Formula = "=VLOOKUP($C" & index & ", enginelist!$A$2:$C$150, 3, FALSE)"
        index = index + 1
        End With
    End If
Next icell
End Sub