Se connecter avec
S'enregistrer | Connectez-vous

Changement de couleur de cellule selon le contenue

Tags :
Dernière réponse : dans Programmation
Partagez

Bonjour,

Je souhaiterais avoir de l'aide sur une macro pour excel 2003.

Par exemple:
Si le contenue des cellules A1 à A600 est égale a une des référence contenue dans les cellules B1 à B600 la couleur de ma cellule devient rouge. Il me faudrait 4 couleur.

Sachant que les informations reportés sont soit du texte soit des nombres soit les deux, est-il possible d'appliquer cette macro?

J'ai essayé la mise en forme conditionnel mais rien ni fait pas moyen d'appliquer les couleur dés lord ou je sélectionne une colonne ou il y a des lettres et des nombres mélangés.

D'avance merci pour votre aide.

zeb a dit :
Salut Chahyd,

Veux-tu de l'aide sur la mise en forme conditionnel que tu ne sembles pas maîtriser, ou veux-tu te lancer dans la programmation en Visual Basic (macro) ?


Salut Zeb,

Désolé de répondre aussi tarde mais je travaille en horaire décalées.

Je voudrais me lancer dans la programmation j'ai lue quelque poste sur des forum et je souhaiterais franchir le pas.

Ci tu peut me donner quelque base (écrie le programme complet me satisferais aussi mais je ne sais pas si tu a du temps a me consacrer) de façon a pouvoir comprendre le langage.


Eh, c'est un forum, pas un tchat, alors tu postes quand tu veux, quand tu peux.
Et moi, c'est pareil ;) 

En informatique comme dans tous les autres domaines, pour résoudre un gros problème, on le découpe en petit problème. En résolvant tous, un à un, on finit par résoudre le gros !

Attachons-nous pour commencer, à trouver dans B1:B600, la valeur de A1.
C'est facile. Il faut parcourir toute la plage, cellule par cellule et comparer leur valeur avec celle de A1.
T'es d'accord ?

Alors voici comment l'écrire :
  1. Dim celluleA As Range
  2. Dim celluleB As Range
  3. Dim trouve As Boolean
  4.  
  5. trouve = False
  6.  
  7. Set celluleA = Range("A1")
  8. For Each celluleB In Range("B1:B600")
  9. If celluleA.Value = celluleB.Value Then
  10. trouve = True
  11. Exit For
  12. End If
  13. Next
  14.  
  15. If trouve Then
  16. MsgBox "La valeur de A1 a été trouvée dans la cellule " & celluleB.Address
  17. Else
  18. MsgBox "La valeur de A1 n'a pas été trouvée dans la plage B1:B600"
  19. End If


Étudie ce code.
Je te propose ensuite de le modifier pour traiter toute la colonne A.

A toi..

Bonjour Zeb,

J'ai suivi tes instructions est effectivement un message m'indique "valeur trouvé".

Que dois-je faire pour la suite?

Je veux attribuer une couleur a une cellule en fonction de sont contenue.

D'avance merci