Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Message d'avertissement en fonction de la couleur d'une cellule

  • Initiateur de la discussion Initiateur de la discussion Garba51
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

G

Garba51

Guest
Bonjour tout le monde,

Mon problème est simple: je voudrais créer une macro qui lorsque que j'ai une cellule qui devient de couleur rouge dans Excel, me donne un avertissement sous forme de fenêtre. J'ai essayé de multiples choses et même fabriqué une fonction (ce qui fonctionnait mais je devais rajouter une colonne dans Excel, ce qui n'était pas pratique). Je débute dans Excel et tout particulièrement dans les Macros et je ne connais pas vraiment bien le langage VB.

Une autre question me vient, pour que VB reconnaisse qu'il s'agit d'une cellule, par exemple W11, écrire 'W11' suffit il? Exemple, If 'W11'= ... Then...


Par avance merci,

Cordialement,

Garba.
 
Re : Message d'avertissement en fonction de la couleur d'une cellule

Bonsoir Garba51 et bienvenue 😉

Malheureusement je crois que tu commences mal ton arrivée sur ce forum 🙄

Une autre question me vient, pour que VB reconnaisse qu'il s'agit d'une cellule, par exemple W11, écrire 'W11' suffit il? Exemple, If 'W11'= ... Then.
Pour ça tu as la FAQ
Et notamment ce fil https://www.excel-downloads.com/threads/ref-wiki-1-de-michelxld-generalites-excel.92356/

Merci également de lire la Lien supprimé

Après nous verrons ...

A+
 
Re : Message d'avertissement en fonction de la couleur d'une cellule

Bonsoir Garba51 et bienvenue 🙂,
Si tu veux surveiller si une cellule devient rouge, c'est qu'elle obéit à une MFC, donc le plus simple est de vérifier sa valeur avec les mêmes conditions que la MFC car VBA ne te renverra pas la couleur de la MFC...
Maintenant, tu peux faire une recherche sur le forum. Si vraiment ta cellule est le résultat compliqué de différents calculs prenant des valeurs ailleurs, c'est l'événement Calculate qu'il va falloir utiliser (un peu lourd).
Si par contre c'est des cellules bien particulières en saisie qui modifient ta cellule, c'est elles qu'il faudra surveiller avec Change.
Enfin, 'W11' ne fonctionnera pas, c'est Range("W11") qui renvera la cellule, et plus particulièrement Range("W11").Value pour en obtenir le résultat si c'est une formule... Et ceci ne s'appliquera qu'à la feuille active, si tu veux spécifier la feuille, ce sera Sheets("Feuil1").Range("W11").Value qui sera OK... Eventuellement, tu peux utiliser [W11], mais je ne suis pas trop pour, car ça signifie Evaluate, et je ne suis jamais sûr du résultat.
Bon courage 😎
Ajout : Salut Bruno.
 
Dernière édition:
Re : Message d'avertissement en fonction de la couleur d'une cellule

bonsoir le forum,

désolé pour mon intrusion dans le post, mais j'aimerais "savoir", "comprendre".

Code:
Eventuellement, tu peux utiliser [W11], mais je ne suis pas trop pour,  car ça signifie Evaluate

j'ai découvert cette possibilité (remplacer : Range("W11") par [w11]) il y à quelques jours, je trouvais ceci sympa pour diminuer les écritures,
mais JNP, vous n'avez pasl'air favorable,
pouvez vous m'expliquer pourquoi !!
merci pour ce petit cour de syntaxe "VBA"

@plus jacques
 
Re : Message d'avertissement en fonction de la couleur d'une cellule

Re 🙂, Il y a l'école pour et l'école contre 😛...
Personnellement, j'avais eu le même réflexe, mais des surprises dans ma programmation m'en ont dissuadé très rapidement. C'est un peu l'identique de la déclaration de variable avec le bon type. C'est un peu lourd mais ça évite des surprises et du temps de debbogage... C'est aussi moins facile à contrôler quand on relit le code d'un autre (surtout si on n'est pas habitué).
Le plus simple est de lire l'aide sur Evaluate pour te faire ton propre avis.
Bonne soirée 😎
 
Re : Message d'avertissement en fonction de la couleur d'une cellule

Re,

Code:
Le plus simple est de lire l'aide sur Evaluate pour te faire ton propre  avis.

l'aide est parfois de bon secours pour peu que l'on comprenne de quoi on parle !!! étant autodidacte j'ai un peu de mal !!
l'aide est souvent très technique et résumé !!
rien ne remplace l'expérience des forumeurs de cet excellent site.
pour traduire en termes compréhensibles ce que monsieur Excel nous dit !!
merci pour votre explication

@plus jacques
 
Re : Message d'avertissement en fonction de la couleur d'une cellule

Re bonsoir,

Tout d'abord, merci Bruno et JNP pour vos messages de bienvenue 🙂

Bruno, je suis entièrement d'accord sur le fait d'aller chercher les infos sur la liste des FAQ. Cependant, j'ai fait bien plus que cela mais je n'ai jamais réussi à faire reconnaître une cellule excel par les différentes méthodes, qu'elles soient "W11", Range.("W11") et j'en passe. D'une part parce que j'ai d'énormes contraintes de temps et que c'est la première fois que j'utilise VBA et que je débute sur Excel. Et d'autre part parce que je pense que les exemples que j'ai pu trouver sur le net ne sont pas appropriés à mon problème.

Mais encore une fois, je sais que c'est ennuyeux pour les lecteurs.


Pour JNP, merci beaucoup pour tes informations.

En effet, ma ligne de calcul pour cette cellule que j'appelle W11 fait environ 3 lignes sur un écran 23' :s
Il y a énormément de contraintes à prendre en compte venant des valeurs d'autres cellules.
En gros, La cellule W11 va calculer un résultat provenant de différentes conditions. Le résultat s'affichera dans cette cellule et en fonction de ce celui-ci, elle changera de couleur (Vert si c'est bon, Rouge si c'est mauvais).

Ensuite, le but final est de trouver un moyen de calculer des solutions (le rouge n'étant qu'une information visuelle) par des macros. Donc la première étape consiste à faire une macro qui va afficher un avertissement sur l'écran (commande "msgbox" je crois) pour dire à l'utilisateur qu'il y a un problème. Et deuxièmement, je voudrais que sur cette fenêtre d'avertissement, il y ait un "bouton" sur lequel on puisse cliquer qui, une fois cliqué, demanderait à une autre macro de trouver la (ou les) solution(s) et ensuite, me donner une fenêtre sur laquelle je pourrais voir les solutions et choisir l'une d'entre elles et en déduire les conséquences.

Voici un petit aperçu de la commande que j'ai essayé de faire pour obtenir un fenêtre. Je sais qu'elle paraît ridicule, mais honnêtement, j'ai déjà essayé plein de choses et le temps me manque car je fais cela hors de mes horaires de boulot (mais pour le boulot)... 🙁

Sub couleur



If Range("W11").Interior.Color = vbRed Then
MsgBox "message d'avertissement", vbExclamation, ""
End If

End Sub


Merci encore JNP 😉

A bientôt.

Garba.
 
Re : Message d'avertissement en fonction de la couleur d'une cellule

Je viens de lire quelques messages disant que lorsque qu'une case est déjà sous une MFC, on ne peut pas utiliser une macro VBA. En gros, vu que j'ai déjà une mise en forme conditionnelle sur Excel, je ne peux pas faire ce que je j'aimerais. Le problème est qu'en utilisant (.value), cela fonctionne lorsque je debbogue sous VB mais dès que je fais varier la valeur (faisant tout de meme en sorte que la cellule reste rouge) sur Excel, je n'ai plus ma petite fenetre qui apparait. Je ne comprends pas, me faudrait-il une boucle?


Merci.


Garba.
 
Re : Message d'avertissement en fonction de la couleur d'une cellule

Re 🙂,
Comme indiqué précédement, il faut lier l'événement Change de la feuille aux valeurs qui font changer ta cellule.
Exemple : Si C est égal à A+B, on va surveiller si une valeur est saisie en A ou en B et agir en fonction du résultat en C.
Si on passe par Calculate, on va vérifier à chaque calcul de la feuille si la valeur de C a changé, et agir en conséquence.
Fait des recherches sur Worksheet_SelectionChange, Worksheet_Change et Worksheet_Calculate, tu trouveras plein d'exemples.
Bonne journée 😎
 
Re : Message d'avertissement en fonction de la couleur d'une cellule

Merci JNP,

Oui, je vais essayer suivant tes conseils! Merci encore et bonne journée aussi


@+

Garba.
 
Re : Message d'avertissement en fonction de la couleur d'une cellule

Ca marche, merci JNP. En utilisant Worksheet_change, j'ai réussi à obtenir ce que je voulais.

Encore merci 🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…