Bonjour
Je souhaite, en VBA, appliquer un formatage conditionnel à une plage de cellules dans un tableau croisé dynamique, selon deux critères:
si la valeur est comprise entre 0 et 32 alors mettre le texte en rouge et colorer la cellule en rouge
et si la valeur est comprise entre 32 et 40 colorer la celklule en orange
Voilà ce que j'ai codé:
Mais je n'obtiens pas le résultat escompté car in fine toutes les cellules qui sont entre zéro et 32 sont colorées en orange. Pour le moment je n'arrive pas encore à savoir ce qui est mal utilisé dans les propriétés ou méthodes des objets de formaage conditionnel.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 'set two different interior filled according to the cell value in the plage Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _ Formula1:="=0", Formula2:="=32" Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority With Selection.FormatConditions(1).Font .Color = -16383844 .TintAndShade = 0 End With With Selection.FormatConditions(1).Interior .PatternColorIndex = xlAutomatic .Color = 255 .TintAndShade = 0 End With 'set the second Conditional Format Selection.FormatConditions(1).StopIfTrue = False Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _ Formula1:="="">32""", Formula2:="=40" Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority With Selection.FormatConditions(2).Interior .PatternColorIndex = xlAutomatic .Color = 49407 .TintAndShade = 0 End With
Merci pour votre aide
clem256
Partager