Option Explicit
Sub Essai()
Const color1& = 15921906 'gris clair
Const color2& = 14211288 'gris foncé
Const tc& = color1 + color2
Dim mdl$, color&, lg1&, lg2&, lig&: Application.ScreenUpdating = 0
lg1 = [D20].End(3).Row: lg2 = Cells(Rows.Count, 4).End(3).Row
Range(Cells(lg1, 1), Cells(lg2, 10)).Interior.color = color1
mdl = Cells(lg1, 4): color = color2
For lig = lg1 To lg2
With Cells(lig, 1)
If .Offset(, 3) <> .Offset(-1, 3) Then color = tc - color
If color = color2 Then .Resize(, 10).Interior.color = color
End With
Next lig
End Sub