attribuer une couleur de fond à une cellule selon un résultat

ruliann

XLDnaute Occasionnel
Bonjour,

Après avoir fait le tour de google et des forums du net traitant du sujet, je n'ai pas trouvé la solution à mon problème... car je n'ai aps les compétence requises en VBA pour y voir claire.

J'aimerais que les cellules comprises entre F15 et F358 changent de couleur selon si je les renseigne par la lettre e, b, c, a, ou p.

e > bleu
b > vert
c > rose
a > marron
p > mauve

Exemple: si je tape la lettre b en F15, je veux que la cellule devienne verte.


J'ai bien essayé > Format > mise en forme conditionnelle, mais étant limité à 3 conditions (e= bleu, b=vert, et c=rose), je suis coincé!

Pour ceux qui ouvriront le fichier joint, j'ai la même problématique pour la colonne X (de X15 et X358) à savoir :

cellule rouge si 1,
cellule orange si 2, etc...




QQ'un peut-il m'aider à proposer une macro qui fonctionne?
 

Pièces jointes

  • essai.zip
    28.7 KB · Affichages: 174
  • essai.zip
    28.7 KB · Affichages: 174
  • essai.zip
    28.7 KB · Affichages: 179
Dernière édition:

CBernardT

XLDnaute Barbatruc
Re : attribuer une couleur de fond à une cellule selon un résultat

Bonjour ruliann,

Un essai de coloration de la cellule sur une plage précise et selon des valeurs définies.

Utilisation d'une macro évènementielle et de la fonction switch.
 

Pièces jointes

  • ColorationCelluleSwitchV3.xls
    21.5 KB · Affichages: 700

ruliann

XLDnaute Occasionnel
Re : attribuer une couleur de fond à une cellule selon un résultat

bonsoir Bernard,

J'ai regardé ce que tu as fait et effectivement, ca correspond bien à mon problème donc un grand merci

Si je veux importer cette macro dans mon fichier, comment dois je procéder?

et surtout par curisosité, j'aimerais bien essayé de comprendre comment tu as fait...même si je n'y connais rien en macro et vba. Ou est ce que je peux lire ton code stp?
 

CBernardT

XLDnaute Barbatruc
Re : attribuer une couleur de fond à une cellule selon un résultat

Re,

J'ai placé la macro évènementielle dans ton classeur qui est arrivé un peu plus tard.

La macro est dans le module de la feuille.
 

Pièces jointes

  • EssaiColoration.zip
    28 KB · Affichages: 468
  • EssaiColoration.zip
    28 KB · Affichages: 461
  • EssaiColoration.zip
    28 KB · Affichages: 423

ruliann

XLDnaute Occasionnel
Re : attribuer une couleur de fond à une cellule selon un résultat

ah oui d'accord, tu as tout fait quoi

bah ecoute merci beaucoup!! ca meritrait que je te paie un verre ;)

n'empeche que j'aimerais bien savoir faire le meme chose...

va falloir que je m y mette.

T'as appris comment?
 

CBernardT

XLDnaute Barbatruc
Re : attribuer une couleur de fond à une cellule selon un résultat

Re,

Pour commencer Excel, il faut utiliser un tutoriel sous peine de maux de tête répétés et une comsommation d'aspirine élevée ::):)

En haut de ce forum, il y a un tutoriel.

En voila un autre :

Formation Excel en ligne gratuite

Pour le perfectionnement, cela ne passe que par du temps à travailler avec Excel, par exemple en s'essayant à aider ceux qui posent des questions sur ce forum. ;)
 

Rperrie2

XLDnaute Nouveau
Re : attribuer une couleur de fond à une cellule selon un résultat

Bonjour Bernard,

Je suis très interessé par ta macro mais je ne la trouve pas dans le menu habituel (Outils/Macro/Macros...). Pourrais-tu partager directement le script pour que je puisse m'en inspirer ?

Merci d'avance ! :)
 

Etienne2323

XLDnaute Impliqué
Re : attribuer une couleur de fond à une cellule selon un résultat

Bonjour à tous,

@Rperrie2 : Pour accéder à la macro, vous n'avez qu'à cliquer sur "ALT+F11" et ensuite, double-cliquer sur la feuille en question qui se trouve dans le dossier "Microsoft Excel Objets" du menu de gauche, soit l'explorateur de projets S'il n'est pas visible, simplement faire "CTRL+R" pour y accéder.

Bonne contiuité,

Étienne
 

eutrophisation

XLDnaute Occasionnel
Re : attribuer une couleur de fond à une cellule selon un résultat

Bonsoir

Je voudrais utiliser ton code sauf que lorsqu'il s'agit de formule le code ne fonctionne plus. Dans la colonne A j'ai des formules type =EY5 =EY6 et dans A5 j'obtiens des valeurs de 1 à 5 et ainsi de suite quand j'utilise ton code et les valeurs en question sont des valeurs saisies cela marche mais quand ce sont des valeurs resultantes d'une formule cela ne marche pas.
MERCI ET SALUTATIONS SPORTIVES
Je m'excuse d'utiliser ce post pour resoudre mon probleme.
 

CBernardT

XLDnaute Barbatruc
Re : attribuer une couleur de fond à une cellule selon un résultat

Bonsoir à vous,

Pour Rperrie2, la macro est située dans le module de la feuille, comme le précise Etienne2323.

Voici le code:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("F15:F358")) Is Nothing Then
On Error Resume Next
With Target.Interior
.ColorIndex = Switch(Target.Value = "e", 34, _
Target.Value = "b", 43, _
Target.Value = "c", 38, _
Target.Value = "a", 18, _
Target.Value = "p", 39, _
Target.Value = "", -4142)
End With
On Error GoTo 0
ElseIf Not Application.Intersect(Target, Range("X15:X358")) Is Nothing Then
On Error Resume Next
With Target.Interior
.ColorIndex = Switch(Target.Value = 1, 4, _
Target.Value = 2, 45, _
Target.Value = 3, 6, _
Target.Value = 4, 3, _
Target.Value = 5, 41, _
Target.Value = "", -4142)
End With
On Error GoTo 0
End If
End Sub

Pour eutrophisation, le code fonctionne même avec des formules. Il s’agit de bien configurer la plage active de la macro évènementielle.

If Not Application.Intersect(Target, Range("F15:F358")) Is Nothing Then

Dans l’exemple joint, regarde dans la cellule X22, la coloration se fait sans problème même avec une formule.

Le seul problème existant avec cette macro, c’est qu’il est obligatoire de supprimer la valeur d’une cellule par la barre de formule afin que la cellule soit active au moment de la suppression de la valeur. La touche Suppr, efface la valeur mais n'active pas la cellule.
 

Pièces jointes

  • EssaiColoration.zip
    24.1 KB · Affichages: 170
  • EssaiColoration.zip
    24.1 KB · Affichages: 188
  • EssaiColoration.zip
    24.1 KB · Affichages: 191

eutrophisation

XLDnaute Occasionnel
Re : attribuer une couleur de fond à une cellule selon un résultat

La coloration se fait sans problème seulement il faut cliquer sur la cellule pour avoir apparaitre la couleur correspondante à la valeur. J'aurais souhaité que cela se fasse automatiquement.
Est ce le cas dans ton fichier.
MERCI
 

ruliann

XLDnaute Occasionnel
Re : attribuer une couleur de fond à une cellule selon un résultat

La coloration se fait sans problème seulement il faut cliquer sur la cellule pour avoir apparaitre la couleur correspondante à la valeur. J'aurais souhaité que cela se fasse automatiquement.
Est ce le cas dans ton fichier.
MERCI

Bonjour,

Non, la cellule ne se colore qu'une fois que j'ai renseigné le chiffre et validé sur Entrée
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 184
dernier inscrit
Di Martino