Try:
Sub CompareLists()
Application.ScreenUpdating = False
Dim rng As Range, RngList As Object, WS1 As Worksheet, WS2 As Worksheet, LastRow As Long, x As Long
Set WS1 = Sheets("worksheet 1")
Set WS2 = Sheets("worksheet 2")
LastRow = WS2.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
Set RngList = CreateObject("Scripting.Dictionary")
For Each rng In WS1.Range("A2", WS1.Range("A" & WS1.Rows.Count).End(xlUp))
If Not RngList.Exists(rng.Value) Then
RngList.Add rng.Value, Nothing
End If
Next
For x = LastRow To 2 Step -1
With WS2
If Not RngList.Exists(.Cells(x, 1).Value) Then
.Rows(x).Delete
End If
End With
Next
Application.ScreenUpdating = True
End Sub
Bookmarks