Sub Macro1()
Dim col As Byte 'déclare la variable col (COLonne)
Dim coul As Byte 'déclare la variable coul (COULeur)
Dim pl As Range 'déclare la variable pl (PLage)
Dim celCol As Range 'déclare la variable celCol (CELlule de la COLonne)
Dim celPl As Range 'déclare la variable celPl (CELlule de la PLage)
Set pl = Sheets("rangement ").Range("A1").CurrentRegion 'définit la plage pl
With Sheets("stock") 'prend en compte l'onglet "stock"
For col = 2 To 3 'boucle 1 : sur les colonne B à C
coul = IIf(col = 2, 44, 43) 'définit la couleur coul (44 pour B, 43 pour C)
'boucle 2 : sur toutes les cellules de la colonne col
For Each celCol In .Range(.Cells(2, col), .Cells(Application.Rows.Count, col).End(xlUp))
If celCol.Value <> "" Then 'condition : si la cellule n'est pas vide
For Each celPl In pl 'boucle 3 : sur toutes les cellules de la plage pl
'si les deux cellules sont identiques, colore la cellule de la plage pl de la couleur coul
If UCase(celCol.Value) = UCase(celPl.Value) Then celPl.Interior.ColorIndex = coul
Next celPl 'prochaine cellule de la boucle 3
End If 'fin de la condition
Next celCol 'prochaine cellule de la boucle 2
Next col 'prochaine colonne de la boucle 1
End With 'fin de la prise en compte de l'onglet "rangement "
End Sub