Une partie de mon code serait cela, maintenant reste à traiter les 3 mois glissants mais je ne vois absolument pas comment faire...
Option Explicit
Option Base 1
Public Sub Test()
Call Tri_Doublon_Multicolonne(Range("A2:c" & Range("a" & Rows.Count).End(xlUp).Row))
End Sub
'Trier les doublons dans une plage de cellules en prenant en compte plusieurs colonnes
Public Sub Tri_Doublon_Multicolonne(plage As Range)
Dim dico, tablo, textrec As String
Dim i, j As Integer
Set dico = CreateObject("Scripting.Dictionary")
tablo = plage.Value
For i = 1 To UBound(tablo)
textrec = ""
For j = 1 To plage.Columns.Count
textrec = textrec & tablo(i, j)
Next
If Not dico.Exists(textrec) Then
dico(textrec) = i + 1
Cells(i + 1, 7) = "OK"
Else
Cells(i + 1, 7) = "doublons"
Cells(dico.Item(textrec), 7) = "doublons"
End If
Next
End Sub