Excel VBA problème de formule
Résolu
sirima18
-
Mike-31 Messages postés 18405 Date d'inscription Statut Contributeur Dernière intervention -
Mike-31 Messages postés 18405 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai un problème avec une marco dans Excel. Je ne sais pas comment crééer la marco suivante :
Si la cellule (p.ex. A2) est vide, alors la cellule (p.ex. B2) doit se mettre en vert, par contre si la cellule A2 a qqch d'écrit dedans, alors la cellule B2 doit se mettre en rouge.
Comment dois-je faire?
Merci pour votre réponse, je suis paumée.
J'ai un problème avec une marco dans Excel. Je ne sais pas comment crééer la marco suivante :
Si la cellule (p.ex. A2) est vide, alors la cellule (p.ex. B2) doit se mettre en vert, par contre si la cellule A2 a qqch d'écrit dedans, alors la cellule B2 doit se mettre en rouge.
Comment dois-je faire?
Merci pour votre réponse, je suis paumée.
A voir également:
- Excel VBA problème de formule
- Formule si et excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Formule somme excel colonne - Guide
- Excel mise en forme conditionnelle formule - Guide
- Liste déroulante excel - Guide
11 réponses
Bonjour,
Il suffit d'enregistrer la procédure de mise en forme conditionnelle que voici :
Sub MEFC()
Range("A2").select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _
Formula1:="="""""""""""""
Selection.FormatConditions(1).Interior.ColorIndex = 3
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:="="""""""""""""
Selection.FormatConditions(2).Interior.ColorIndex = 43
End Sub
A+
Il suffit d'enregistrer la procédure de mise en forme conditionnelle que voici :
Sub MEFC()
Range("A2").select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _
Formula1:="="""""""""""""
Selection.FormatConditions(1).Interior.ColorIndex = 3
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:="="""""""""""""
Selection.FormatConditions(2).Interior.ColorIndex = 43
End Sub
A+
Salut,
Pourquoi passer par un code VBA pour une fonction aussi simple, tu ne donnes pas ta version Excel, supposons 2003
mets une plage colonne B en surbrillance exemple B2 à B30
Format/Mise en forme conditionnelle
sélectionne la formule est : est saisi la formule
=$A2=""
Format/motif/sélectionne la couleur verte
Ajouter
sélectionne la formule est : est saisi la formule
=$A2<>""
Format/motif/sélectionne la couleur rouge
et OK
Pour les version 2007 ou 2010 c'est pareil, si tu as besoin du chemin d'accès détaillé demande le
Pourquoi passer par un code VBA pour une fonction aussi simple, tu ne donnes pas ta version Excel, supposons 2003
mets une plage colonne B en surbrillance exemple B2 à B30
Format/Mise en forme conditionnelle
sélectionne la formule est : est saisi la formule
=$A2=""
Format/motif/sélectionne la couleur verte
Ajouter
sélectionne la formule est : est saisi la formule
=$A2<>""
Format/motif/sélectionne la couleur rouge
et OK
Pour les version 2007 ou 2010 c'est pareil, si tu as besoin du chemin d'accès détaillé demande le
Bonjour,
Pas besoin de macro. Une simple mise en forme conditionnelle fera amplement l'affaire.
Cdlt,
Pas besoin de macro. Une simple mise en forme conditionnelle fera amplement l'affaire.
Cdlt,
Merci pour vos réponses.
J'utilise Excel 2003 en effet.
J'ai essayé avec la mise en forme toute simple et je n'ai pas réussi, vu que ce n'est pas sur la même feuille, j'ai oublié de le préciser.
La cellule A2 (où il y aurait du texte) se trouve sur la feuille 1, tandis que la cellule B2 qui doit se mettre en couleur se trouve sur la feuille 2.
Est-ce possible?
A bientôt
J'utilise Excel 2003 en effet.
J'ai essayé avec la mise en forme toute simple et je n'ai pas réussi, vu que ce n'est pas sur la même feuille, j'ai oublié de le préciser.
La cellule A2 (où il y aurait du texte) se trouve sur la feuille 1, tandis que la cellule B2 qui doit se mettre en couleur se trouve sur la feuille 2.
Est-ce possible?
A bientôt
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re,
Ce n'est pas un problème, il suffit de rapatrier les données de la feuille dans une colonne de la feuille ou doit s'opérer la mise en forme conditionnelle. tu as bien sur la feuille de calcul une colonne vide qui pourra être masquée.
Deux exemples, tes données sont sur la feuille 2 colonne A de A2 à A20. Tu mets la plage en surbrillance et Edition/Copier tu vas sur la feuille de ta mise en forme conditionnelle colonne X par exemple Edtion/Collage Spécial et clic sur Avec liaison.
Tout la plage aura un 0 il suffira de modifier la formule de la mise en forme pour remplacer "" par 0
Autre possibilité
Gardons les données précédentes, en X2 tu saisis une formule conditionnelle
=SI(Feuil2!A2<>"";Feuil2!A2;"")
Tu incrémentes cette formule vers le bas
La formule de ta mise en forme conditionnelle pour le vert sera
=$X2=""
Et pour le rouge
=$X2<>""
Ensuite libre à toi de masquer la colonne X
Ce n'est pas un problème, il suffit de rapatrier les données de la feuille dans une colonne de la feuille ou doit s'opérer la mise en forme conditionnelle. tu as bien sur la feuille de calcul une colonne vide qui pourra être masquée.
Deux exemples, tes données sont sur la feuille 2 colonne A de A2 à A20. Tu mets la plage en surbrillance et Edition/Copier tu vas sur la feuille de ta mise en forme conditionnelle colonne X par exemple Edtion/Collage Spécial et clic sur Avec liaison.
Tout la plage aura un 0 il suffira de modifier la formule de la mise en forme pour remplacer "" par 0
Autre possibilité
Gardons les données précédentes, en X2 tu saisis une formule conditionnelle
=SI(Feuil2!A2<>"";Feuil2!A2;"")
Tu incrémentes cette formule vers le bas
La formule de ta mise en forme conditionnelle pour le vert sera
=$X2=""
Et pour le rouge
=$X2<>""
Ensuite libre à toi de masquer la colonne X
Merci pour votre aide.
J'ai réussi à faire que lorsque j'écris qqch dans la cellule A2 par exemple, la cellule B2 se met en rouge (en suivant les instructions de Mike-31, en copiant avec liaison + formule conditionnelle. Mais le problème est que lorsque j'enlève le texte, la cellule reste rouge et ne se remet pas en vert. J'ai du oublier qqch dans ma formule.
Mise en forme conditionnelle :
Ma formule est : =$A2<>"0"
Format : cellule en rouge
Est-ce que je dois rajouter une condition?
J'ai réussi à faire que lorsque j'écris qqch dans la cellule A2 par exemple, la cellule B2 se met en rouge (en suivant les instructions de Mike-31, en copiant avec liaison + formule conditionnelle. Mais le problème est que lorsque j'enlève le texte, la cellule reste rouge et ne se remet pas en vert. J'ai du oublier qqch dans ma formule.
Mise en forme conditionnelle :
Ma formule est : =$A2<>"0"
Format : cellule en rouge
Est-ce que je dois rajouter une condition?
Re,
Regarde l'exemple ci joint
https://www.cjoint.com/?iFo1P6Kuf5
il est possible de faire avec d'autre formule plus ou moins complexe sans passer avec un rapatriement ou avec un code VBA.
La solution avec cellule nommée est faisable à condition de ne pas avoir des dizaines de cellules à nommer
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Regarde l'exemple ci joint
https://www.cjoint.com/?iFo1P6Kuf5
il est possible de faire avec d'autre formule plus ou moins complexe sans passer avec un rapatriement ou avec un code VBA.
La solution avec cellule nommée est faisable à condition de ne pas avoir des dizaines de cellules à nommer
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Merci infiniment. Mais je n'y arrive toujours pas. Mais c'est pas grave, je vais essayer encore et bien regarder ton exemple.
J'ai bien recréer la formule comme dans la feuille 3 dans la colone en jaune mais il n'y pas de lien avec ma colonne B, du coup rien ne se met en rouge ou en vert.
J'ai bien été dans Forme conditionnelle pourtant. Désolée, j'ai de la peine avec Excel...
Merci encore. Bonne fin de journée.
J'ai bien recréer la formule comme dans la feuille 3 dans la colone en jaune mais il n'y pas de lien avec ma colonne B, du coup rien ne se met en rouge ou en vert.
J'ai bien été dans Forme conditionnelle pourtant. Désolée, j'ai de la peine avec Excel...
Merci encore. Bonne fin de journée.
Re,
Récupère le fichier ou tu trouveras les explications sur quelques procédures de mise en forme sur des feuilles différentes.
https://www.cjoint.com/?jbjDLGW8ov
Récupère le fichier ou tu trouveras les explications sur quelques procédures de mise en forme sur des feuilles différentes.
https://www.cjoint.com/?jbjDLGW8ov