Sub Test_Tab_4()
Dim F1 As Worksheet, F2 As Worksheet, I1&, I2&, TabF1(), TabF2(), Deb!, ListeF1 As Range, ListeF2 As Range
Deb = Timer
Application.ScreenUpdating = False
Set F1 = Sheets("Fichier1"): Set F2 = Sheets("Fichier2")
TabF1 = F1.UsedRange.Value
TabF2 = F2.UsedRange.Value
F1.Columns(1).Interior.ColorIndex = xlNone
F2.Columns(1).Interior.ColorIndex = xlNone
For I1 = LBound(TabF1, 1) + 1 To UBound(TabF1, 1)
For I2 = LBound(TabF2, 1) + 1 To UBound(TabF2, 1)
If TabF1(I1, 1) = TabF2(I2, 1) And _
TabF1(I1, 11) = TabF2(I2, 11) And _
TabF1(I1, 18) = TabF2(I2, 18) And _
TabF1(I1, 19) = TabF2(I2, 19) And _
TabF1(I1, 20) = TabF2(I2, 20) Then
If Not ListeF1 Is Nothing Then
Set ListeF1 = Application.Union(ListeF1, F1.Range(F1.Cells(I1, 1).Address))
Else
Set ListeF1 = F1.Range(F1.Cells(I1, 1).Address)
End If
If Not ListeF2 Is Nothing Then
Set ListeF2 = Application.Union(ListeF2, F2.Range(F2.Cells(I2, 1).Address))
Else
Set ListeF2 = F2.Range(F2.Cells(I2, 1).Address)
End If
Exit For
End If
Next I2
Next I1
ListeF1.Interior.ColorIndex = 6
ListeF2.Interior.ColorIndex = 6
Application.ScreenUpdating = True
MsgBox Timer - Deb
End Sub