Bonjour Philippe,
Tu trouveras en pièce jointe un exemple permettant de répondre à ton problème.
Principe :
1. Tu ajoutes une Feuille appelée par exemple "Palette"
2.Dans une colonne de cette feuille par exemple en "B1:B10" tu colories les cellules avec la couleur correspondant à chaque valeur B1=Couleur 0, B2=Couleur1, ....B10=Couleur9.
3. Tu règles les valeurs de la Plage Nommée "Indices_Couleur" pour dire ou se trouvent dans la Feuille à colorier les valeurs à prendre en considération pour colorier les lignes exemple : en "E2:E33"
Tu codes l'évènement "Worksheet_Change" de la feuille à colorier
exemple "Tableau" :
=====================================================
Private Sub Worksheet_Change(ByVal Target As Range)
Set Palette_Couleurs = Sheets("Palette").Range("B1:B10")
Set Indices_Couleurs = Range("E2:E33")
If Not Intersect(Target, Indices_Couleurs) Is Nothing Then
If IsNumeric(Target) Then
i = CInt(Target)
If i <= 10 Then Target.EntireRow.Interior.ColorIndex = Palette_Couleurs.Cells(i + 1).Interior.ColorIndex
End If
End If
End Sub
=====================================================
Ensuite les lignes doivent se colorier automatiquement, chaque fois que tu changes une valeur dans la Plage "Indices_Couleurs".
NB :
- Une fois la palette définie, il est bien sur possible de cacher la feuille
- Cela marche avec une palette à 10 entrées
- Les valeurs peuvent être décimales (elles sont alor arrondies + ou -)
En te souhaitant bon courage pour la suite ...
Omicron