Bonjour,
Je cherche à créer une mise en forme conditionnelle sur les 5 différents champs d'un TCD, en VBA.
Avec le code ci-dessous, aucun souci pour les 4 premiers champs. Au 5ème champs le code s'arrête sur la ligne de code "Selection.FormatConditions(1).ColorScaleCriteria(1).Type = _
xlConditionValueLowestValue"
avec l'erreur "l'indice n'appartient pas à la sélection".
- si je fais cette MEFC manuellement dans mon fichier, aucun souci pour les 4 premiers champs. Sur le 5ème quand je clique sur le bouton "OK" à la fin des paramètrages de la MEFC, la fenêtre reste active et rien ne se créé !!!
- en copiant les données de ce champs dans la colonne d'après, la MEFC fonctionne.
- en créant une nouvelle feuille, en recréant mon fichier Excel, même erreur.
Si quelqu'un peut m'aider, je m'arrache les cheveux !!! et ne trouve rien de similaire sur internet...
Merci d'avance pour vos réponses
Mon code:
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
26 a = Range("A6").End(xlDown).Offset.Row e = Range("B4").End(xlToRight).Column For i = 2 To e Range(Cells(6, i), Cells(a, i)).Select Selection.FormatConditions.AddColorScale ColorScaleType:=3 Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority Selection.FormatConditions(1).ColorScaleCriteria(1).Type = _ xlConditionValueLowestValue With Selection.FormatConditions(1).ColorScaleCriteria(1).FormatColor .Color = 788644 .TintAndShade = 0 End With Selection.FormatConditions(1).ColorScaleCriteria(2).Type = _ xlConditionValueNumber Selection.FormatConditions(1).ColorScaleCriteria(2).Value = Cells(5, i) With Selection.FormatConditions(1).ColorScaleCriteria(2).FormatColor .Color = 8711167 .TintAndShade = 0 End With Selection.FormatConditions(1).ColorScaleCriteria(3).Type = _ xlConditionValueHighestValue With Selection.FormatConditions(1).ColorScaleCriteria(3).FormatColor .Color = 3893035 .TintAndShade = 0 End With Next i
Partager