Mise en forme conditionnelle sous vba

Fermé
aurelp95 - 11 janv. 2015 à 22:25
Hillian Fellers Messages postés 79 Date d'inscription mardi 22 octobre 2013 Statut Membre Dernière intervention 24 mai 2022 - 18 janv. 2015 à 17:58
Bonjour,

J'ai un tableau avec pas mal de mise en forme conditionnelle, mais le problème est que je ne suis pas le seul utilisateur de ce fichier, et donc avec des risques importants de faire sauter la mise en page conditionnelle.

Je ne maîtrise pas suffisamment VBA, donc quand l'enregistreur de macros ne fonctionnent pas, comme c'est le cas pour les mises en forme conditionnelle, je suis un peu bloqué.

Je souhaite intégrer la mise en forme conditionnelle suivante dans mon fichier excel :
=INDEX('CSN-1'!$A$1:$CF$979;EQUIV($C3;'CSN-1'!$A$1:$A$979;0);EQUIV(D3;'CSN-1'!$A$3:$LS$3;0))>1

Et que si la formule est vraie, celà donne un dégradé bicolore blanc et vert "du centre".

Le fichier utilisé est disponible au lien suivant : http://cjoint.com/?EAlwHD3tpid

Merci d'avance pour votre aide.

1 réponse

Hillian Fellers Messages postés 79 Date d'inscription mardi 22 octobre 2013 Statut Membre Dernière intervention 24 mai 2022 12
18 janv. 2015 à 17:58
Cela dépend peut-être de ta version Excel: sous Office 2013, l'enregistrement de macros avec la mise en forme conditionnelle donne des résultats de ce type:

Sub Macro1()
'
' Macro1 Macro
'

'
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _
Formula1:="=0"
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 = 13551615
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
End Sub
0