Sub TESTE()
Dim LINHA As Integer
Dim CONTADOR As Integer
Dim ULTIMA_LINHA As Integer
Dim PASTA As String
Dim PLANILHA As String
PASTA = "Teste.xlsm"
PLANILHA = "Planilha1"
ULTIMA_LINHA = Workbooks(PASTA).Worksheets(PLANILHA).Cells(Rows.Count, 1).End(xlUp).Row
For LINHA = 1 To ULTIMA_LINHA
For CONTADOR = 1 To ULTIMA_LINHA
If StrComp(Workbooks(PASTA).Worksheets(PLANILHA).Range("A" & LINHA), Workbooks(PASTA).Worksheets(PLANILHA).Range("A" & CONTADOR), 1) Then
Workbooks(PASTA).Worksheets(PLANILHA).Range("B" & CONTADOR) = "É Igual"
'MsgBox ("É igual")
Else
Workbooks(PASTA).Worksheets(PLANILHA).Range("B" & CONTADOR) = "É Igual"
'MsgBox ("É Diferente")
End If
Next CONTADOR
LINHA = LINHA + 1
Next LINHA
End Sub
Não sei muito sobre VB, mas a lógica que você vai ter que aplicar é.:
1º Crie duas listas genéricas
2º Toda vez que adicionar um contato na lista 1 faça a verificação se já contem esse valor dentro dela, se não contem você adiciona se o valor já estiver dentro da lista adicione ele na segunda lista
No final você terá dois List um com valores exclusivos e outro com os valores que se repetem.