Hi rider!
Unzip the attachment and place it in the same path.
Sub test()
Dim pth$, arrOri, i&, d As Object, rng As Range
Set d = CreateObject("scripting.dictionary")
pth = ThisWorkbook.Path & "\"
Application.ScreenUpdating = False
Workbooks.Open pth & "BasketOrder.xlsx"
arrOri = Sheets(1).[a1].CurrentRegion
For i = 1 To UBound(arrOri)
d(arrOri(i, 3)) = ""
Next i
ActiveWorkbook.Close False
Workbooks.Open pth & "1.xls"
With Sheets(1)
For i = 2 To .Cells(Rows.Count, 1).End(3).Row
If d.exists(.Cells(i, 2).Value) Then
If rng Is Nothing Then Set rng = .Rows(i) Else Set rng = Union(rng, .Rows(i))
End If
Next i
If Not rng Is Nothing Then rng.Delete
End With
ActiveWorkbook.Close True
Application.ScreenUpdating = True
End Sub