Re-bonjour largoj,
Salutations à Pierre et MFerrand,
La procédure utilise la propriété Interior.ColorIndex qui permet de définir la couleur de remplissage de la cellule parmi les 56 proposées.
1 correspond au noir,
2 correspond au blanc,
3 correspond au rouge,
etc.
La palette de ColorIndex te permet donc d'effectuer la saisie des chiffres 1 à 56.
Pour éviter l'utilisation des 2 premières couleurs (noir et blanc), il suffit de décaler la plage de couleur par rapport à la valeur saisie (Couleur = valeur saisie +2) et limiter les valeurs autorisées (1 à 54).
Voici le code correspondant
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column = 5 Then
If IsNumeric(Target.Value) Then
If Target.Value >= 1 And Target.Value <= 54 Then
Cells(Target.Row, 1).Resize(Target.Value, 10).Interior.ColorIndex = Target.Value + 2
End If
End If
End If
End Sub
A+