Bonjour à tous,
Avec un filtre,
si il y a doublons de référence, ils sortirons.
(c'est instantané, même avec 20000 lignes)
dans le VBE de la feuille
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("e5")) Is Nothing Then
If Target.Count > 1 Then Exit Sub
Range("k2") = "=donnée!a2=$e$5" 'critère filtre
With Sheets("donnée")
.Range("a1:u" & .[a65000].End(xlUp).Row).AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Range("k1:k2"), CopyToRange:=Range("a9:t9"), Unique:=False
End With
End If
End Sub
Bonne journée
Claude