VBA excel Comment mettre les formules et les formats en VBA dans la boite mise e

Résolu
pouy64 Messages postés 5 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 3 mars 2006 - 2 mars 2006 à 22:36
pouy64 Messages postés 5 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 3 mars 2006 - 3 mars 2006 à 16:15
Bonsoir à soir à tous,

Je suis novice en VBA et je ne sais pas comment écrire les lignes pour
mettre les formules et les formats dans la boite se saisie de mise en
forme conditionnelle à partir de VBA. Quand je le fais à partir de
l'enregistreur automatique, ma macro reste vide.

j'ai bien trouvé sur le site 3 lignes avec les valeurs, mais elles ne
fonctionnent pas pour les formules.les lignes que j'ai trouvées sont
les suivantes :


Selection.FormatConditions.Delete

Selection.FormatConditions.Add Type:= xlCellValue, Operator:=xlGreater, Formula1:="10"

Selection.FormatConditions(1).Interior.ColorIndex = 3











Dans mon cas pour la 2ème ligne, j'écris :


Selection.FormatConditions.Add Type: =xlCellValue, Operator:=xlGreater, Formula1:="="jemets ma formule ici""
Un grand merci à tous



pouy

5 réponses

michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
3 mars 2006 à 09:01
rebonjour

tu peux essayer

.FormatConditions(1).Interior.Pattern = xlGrid
.FormatConditions(1).Interior.PatternColorIndex = 41

bonne journée
michel
3
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
3 mars 2006 à 06:30
bonjour

tu peux essayer ce type de synthaxe :
exemple pour appliquer une formule à la mise en forme conditionnelle de la cellule A1 (colorier la cellule A1 si elle n'est pas vide)

With Range("A1")
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Operator:=xlGreater, Formula1:="=NON(ESTVIDE(A1))"
.FormatConditions(1).Interior.ColorIndex = 3
End With

bonne journée
michel
0
pouy64 Messages postés 5 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 3 mars 2006
3 mars 2006 à 08:19
bonjour michelxld

Je voudrais tout d'abord te remercier pour ton aide.
J'ai éssayé ta ligne pour la formule et elle fonctionne c'est en fait le type qui n'était pas bon, avec le type :=xlExpression elle fonctionne trés bien. Une petite question supplémentaire la partie verte fonctionne mais la partie rouge ne fonctionne pas.

j'ai essayé aussi avec devant le point de format de mettre :
selection.FormatConditions(1).Pattern = xlGrid, je crois que je fais quelque chose qui faut pas.

With Range("A1")
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Operator:=xlGreater, Formula1:="=ET(P$11>=$J13;P$11<$J13+($K13-$J13+1)*$L13%)"
.FormatConditions(1).Interior.ColorIndex = 3
.FormatConditions(1).Pattern = xlGrid
.FormatConditions(1).PatternColorIndex = 41
End With

Je suis vraiement pas bon !
merci beaucoup.
pouy
0
pouy64 Messages postés 5 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 3 mars 2006
3 mars 2006 à 08:19
bonjour michelxld

Je voudrais tout d'abord te remercier pour ton aide.
J'ai éssayé ta ligne pour la formule et elle fonctionne c'est en fait le type qui n'était pas bon, avec le type :=xlExpression elle fonctionne trés bien. Une petite question supplémentaire la partie verte fonctionne mais la partie rouge ne fonctionne pas.

j'ai essayé aussi avec devant le point de format de mettre :
selection.FormatConditions(1).Pattern = xlGrid, je crois que je fais quelque chose qui faut pas.

With Range("A1")
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Operator:=xlGreater, Formula1:="=ET(P$11>=$J13;P$11<$J13+($K13-$J13+1)*$L13%)"
.FormatConditions(1).Interior.ColorIndex = 3
.FormatConditions(1).Pattern = xlGrid
.FormatConditions(1).PatternColorIndex = 41
End With

Je suis vraiement pas bon !
merci beaucoup.
pouy
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pouy64 Messages postés 5 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 3 mars 2006
3 mars 2006 à 16:15
Rebonjour Michel,
Je te remercie pour ton aide elle m'a était trés précieuse, tu es vraiement un As. Le module fonctionne trés bien.

Quand on connait pas c'est vraiement diffice d'autant plus que je ne sais pas me servir de la bibliothèque l'explorateur d'objet, je sais qu'il possible d'appeler une fonction et d'avoir la liste des objets qui vont avec.
Je vais essayer de trouver de la doc pour pouvoir l'utiliser.
Merci de tout coeur et à bientôt.

Je joins mon module dans le cas ou il intèresse quelqu'un.

Sub Format_Conditionnel_avec_Formule()




With ActiveCell.Range("A1:BC1").Select


Selection.FormatConditions.Delete'Nettoyage des formats et des champs de boite Format conditionnel


'Pour le format 1


Selection.FormatConditions.Add Type:=xlExpression, Operator:=xlGreater, Formula1:="= « Remplacer ce texte par votre formule » "


Selection.FormatConditions(1).Interior.PatternColorIndex = 41'Couleur Bleu du motif


Selection.FormatConditions(1).Interior.Pattern = xlGrid'motif quadrillage


'Pour le format 2


Selection.FormatConditions.Add Type:=xlExpression, Operator:=xlGreater, Formula1:="= « Remplacer ce texte par votre formule » "


Selection.FormatConditions(2).Interior.ColorIndex = 41'CouleurBleu plein de la cellule


'Pour le format 3


Selection.FormatConditions.Add Type:=xlExpression, Operator:=xlGreater, Formula1:="= « Remplacer ce texte par votre formule » "


Selection.FormatConditions(3).Interior.ColorIndex = 15 'Couleur Gris clair plein de la cellule


End With
End Sub

christian

pouy
0
Rejoignez-nous