Bonsoir
Remplacez votre code par celui ci-dessous
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range
Dim lig As Integer
If Target.Column = 1 Or Target.Column = 3 Then
Set Plage = Range(Cells(4, Target.Column), Cells(Cells(Rows.Count, Target.Column).End(xlUp).Row, Target.Column))
Plage.Interior.ColorIndex = xlNone
On Error Resume Next
lig = Plage.Find(Cells(2, Target.Column), LookIn:=xlValues, lookat:=xlWhole).Row
If lig > 0 Then
With Cells(lig, Target.Column).Interior
.ColorIndex = 37
.Pattern = xlSolid
End With
End If
End If
End Sub
Cordialement