Sub IdentifierDoublonsSurFeuilleSource()
Dim FeuilBase As Worksheet
Dim TDon As Variant
Dim TSpl As String
Dim lignesEnDouble As Object
Dim i As Long
' Référence à la feuille source
Set FeuilBase = Worksheets("Feuil1") ' Remplacez "NomFeuilleSource" par le nom de votre feuille source
' Tableau pour stocker les données de la feuille source
TDon = FeuilBase.Range("A1:E" & FeuilBase.Cells(FeuilBase.Rows.Count, "A").End(xlUp).Row).Value
' Nettoyage des couleurs de fond de cellules en doublons
With FeuilBase.Range(FeuilBase.Cells(1, 1), FeuilBase.Cells(FeuilBase.Cells(65536, 1).End(xlUp).Row, 5)).Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
' Dictionnaire pour stocker les lignes rencontrées
Set lignesEnDouble = CreateObject("Scripting.Dictionary")
' Parcours des données et identification des doublons
For i = LBound(TDon, 1) To UBound(TDon, 1)
TSpl = TDon(i, 1) & "|" & TDon(i, 2) & "|" & TDon(i, 3) & "|" & TDon(i, 4) & "|" & TDon(i, 5)
' Vérifie si la ligne est déjà rencontrée
If lignesEnDouble.Exists(TSpl) Then
' Marquer la ligne comme un doublon sur la feuille source
FeuilBase.Range("A" & i & ":E" & i).Interior.Color = RGB(255, 255, 0) ' Jaune vif pour marquer le doublon
Else
' Ajouter la ligne au dictionnaire
lignesEnDouble(TSpl) = True
End If
Next i
End Sub