Sua técnica compara pares de células repetidamente. Aqui está uma maneira de evitar o loop duplo:
Sub COLOUR_DOUBLE_ENTRY()
Dim N As Long, wf As WorksheetFunction
Dim rng As Range, r As Range
Set wf = Application.WorksheetFunction
N = Cells(Rows.Count, "A").End(xlUp).Row
Set rng = Range("A1:A" & N)
For Each r In rng
If wf.CountIf(rng, r.Value) > 1 Then
With r.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 49407
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
Next r
End Sub
Claro, isso é apenas uma descrição da técnica. Você pode adaptá-lo para atender às suas necessidades.