Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'au changement de cellule active
Dim of1 As Integer, of2 As Integer 'déclare les variable of1 et of2 (OFfset1 et OFfset2)
Dim pl As Range 'déclare la variable pl (PLage)
Dim r1 As Range, r2 As Range 'déclare les variable r1 et r2 (Recherche 1 et Recherche 2)
If Selection.Cells.Count > 1 Then Exit Sub 'si plus d'une seule cellule séletionnée, sort de la procédure
Set pl = Range("AH8:AH18") 'définit la plage pl
pl.Interior.ColorIndex = 36 'enlève la couleur orange à toutes la plage pl
Select Case Target.Column 'agit en fonction de la colonne de la cellule sélectionné
Case 14 'cas 14 (=N)
of1 = -8 'définit la variable of1
of2 = 4 'définit la variable of2
Case 16 'cas 16 (=P)
of1 = -10 'définit la variable of1
of2 = 2 'définit la variable of2
Case Else 'tous les autres cas
Exit Sub 'sort de la procédure
End Select 'fin de l 'action en fonction de ...
Set r1 = pl.Find(Target.Offset(0, of1).Value, , xlValues, xlWhole) 'définit la recherche r1
If Not r1 Is Nothing Then r1.Interior.ColorIndex = 45 'si au moins une occurrence est trouvé, colore d'orange la première occurrence trouvée
Set r2 = pl.Find(Target.Offset(0, of2).Value, , xlValues, xlWhole) 'définit la recherche r2
If Not r2 Is Nothing Then r2.Interior.ColorIndex = 45 'si au moins une occurrence est trouvé, colore d'orange la première occurrence trouvée
End Sub