Bonjour à tous,
Devant tant d'explications obscures, un essai :
Option Explicit
Sub test()
Dim dico As Object, a, i As Long, txt As String
Set dico = CreateObject("Scripting.Dictionary")
dico.CompareMode = 1
With Sheets(1).Range("a1").CurrentRegion
a = .Value
dico("phoneLine") = VBA.Array(a(1, 1), a(1, 2), a(1, 3), a(1, 4), a(1, 5), a(1, 6), a(1, 7), a(1, 8))
For i = 2 To UBound(a, 1)
If a(i, 5) <> "miss" Then
txt = Join$(Array(a(i, 1), a(i, 4), a(i, 6)), Chr(2))
If Not dico.exists(txt) Then
dico(txt) = VBA.Array(a(i, 1), a(i, 2), a(i, 3), a(i, 4), a(i, 5), a(i, 6), a(i, 7), a(i, 8))
End If
End If
Next
End With
With Sheets(2).Range("a1")
.CurrentRegion.Clear
.Resize(dico.Count, 8).Value = _
Application.Transpose(Application.Transpose(dico.items))
End With
End Sub
En fait, on ne retient qu'une seule ligne correspondant aux différentes occurences phoneLine/callingNumber/date soit la 1ère ligne rencontrée
klin89