Bonjour,
J'ai dû réaliser mes mises en forme conditionnelles avec VBA plutot qu'avec le menu consacré, pour différentes raisons.
j'ai des plages de mises en formes différentes, certaines se chevauchent, d'autres pas, mais en fonction de l'ordre avec lequel je mets mes conditions j'ai un message d'erreur : l'indice n'appartient pas à la sélection.
Pour info, j'ai fais attention à "La méthode Add renvoie une erreur si la cellule contient déjà 3 conditions." mentionné dans le tuto de SilkyRoad.
Je pense que mon problème vient de l'option "afficher les règles de mef pour" "Sélection actuelle" au lieu de "cette feuille de calcul".???
puisque cela fonctionne si je les fais avec le menu des mefC.
Voici mon codeJ'ai essayé diverses façon :
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 With Application.Union(Range("C3:AG23"), Range("C25:AG27"), Range("C29:AG148")) .FormatConditions.Delete .FormatConditions.Add Type:=xlExpression, Formula1:="=EQUIV(C$4;FERIES;0)>0" .FormatConditions(1).Interior.Color = RGB(128, 128, 128) .FormatConditions(1).StopIfTrue = False End With With Range("C29:AG148") .FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, Formula1:="=$A$5" .FormatConditions(2).Borders(xlEdgeLeft).Color = -16777024 .FormatConditions(2).StopIfTrue = False End With '... JUSQU A 15 INCLUS PAS DE PB With Range("C29:AG148") 'CC .FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, Formula1:="=$A$22" .FormatConditions(15).Interior.Color = RGB(173, 248, 116) .FormatConditions(15).StopIfTrue = False End With 'PAS MOYEN D AJOUTER CETTE CONDITION With Range("C3:AG3") 'Toussaint P & T .FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _ Formula1:="=$AJ$7", Formula2:="=$AK$7" .FormatConditions(16).Interior.Pattern = xlGray8 .FormatConditions(16).StopIfTrue = False End With
, ... puis de
Code : Sélectionner tout - Visualiser dans une fenêtre à part With Application.Union(Range("C3:AG23"), Range("C25:AG27"), Range("C29:AG148"))
...,
Code : Sélectionner tout - Visualiser dans une fenêtre à part With Range("C29:AG148")
les 2 à la suite fonctionnent bien
,... suivi de
Code : Sélectionner tout - Visualiser dans une fenêtre à part With Range("C3:AG3")
ça fonctionne aussi,
Code : Sélectionner tout - Visualiser dans une fenêtre à part With Application.Union(Range("C3:AG23"), Range("C25:AG27"), Range("C29:AG148"))
mais
,... suivi de
Code : Sélectionner tout - Visualiser dans une fenêtre à part With Range("C3:AG3")
, ... suivi de
Code : Sélectionner tout - Visualiser dans une fenêtre à part With Application.Union(Range("C3:AG23"), Range("C25:AG27"), Range("C29:AG148"))
..., ça ne fonctionne pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part With Range("C29:AG148")
NI
, ... puis de
Code : Sélectionner tout - Visualiser dans une fenêtre à part With Application.Union(Range("C3:AG23"), Range("C25:AG27"), Range("C29:AG148"))
..., suivi de
Code : Sélectionner tout - Visualiser dans une fenêtre à part With Range("C29:AG148")
,...
Code : Sélectionner tout - Visualiser dans une fenêtre à part With Range("C3:AG3")
Est-ce que quelqu'un peut m'aider svp.
Merci
Partager