Mise en forme conditionnelle via VBA

vdh_xavier

XLDnaute Junior
Bonjour à tous,

Je rencontre un problème dans une mise en forme conditionnelle sous VBA.

Je voudrais qu’une cellule se remplisse à gauche en une couleur (rose) et à droite en une autre couleur (orange ou bordeaux ou vert ou bleu, selon les cas).

J’ai réussi à utiliser le dégradé, mais ça ne donne pas grand-chose et je ne sais pas très bien à quel endroit positionner les ColorStops.Add (j’ai mis 0.49 et 0.51 mais je n’y crois pas trop).

Quelqu’un sait-il comment il est possible de faire cela sans utiliser le dégradé, mais en ayant 2 couleurs distinctes à gauche et à droite ? J'arrive à le faire manuellement dans les mises en forme, mais pas en VBA.

Voici la partie de code de la partie rose + orange.
With Sheets("Tableau de bord")
DLig = .Range("A" & Rows.Count).End(xlUp).Row
With .Range("E5:E" & DLig)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, Formula1:="=""P homologué + P"""
With .FormatConditions(.FormatConditions.Count)
.StopIfTrue = False
With .Interior
.Pattern = xlPatternLinearGradient
With .Gradient
.ColorStops.Add(0.49).Color = RGB(253, 99, 231)
.ColorStops.Add(0.51).Color = RGB(255, 192, 0)
End With
End With
End With

Je vois joins mon fichier en annexe pour plus de facilité.

Merci d’avance pour votre aide
 

Pièces jointes

  • Tableau.xlsm
    151.2 KB · Affichages: 40
  • Tableau.xlsm
    151.2 KB · Affichages: 39
  • Tableau.xlsm
    151.2 KB · Affichages: 43

Statistiques des forums

Discussions
312 206
Messages
2 086 214
Membres
103 158
dernier inscrit
laufin