Sub CompareCols()
Dim Cl As Range
With CreateObject("scripting.dictionary")
For Each Cl In Range("A2", Range("A" & Rows.count).End(xlUp))
If Not .Exists(Cl.Value) Then .Add Cl.Value, Cl
Next Cl
For Each Cl In Range("B2", Range("B" & Rows.count).End(xlUp))
If .Exists(Cl.Value) Then
.Item(Cl.Value).Delete xlShiftUp
.Remove Cl.Value
End If
Next Cl
If .count > 0 Then Range("B" & Rows.count).End(xlUp).Offset(1).Resize(.count).Value = Application.Transpose(.keys)
End With
End Sub