urgent: boucle + if avec coloration des cellules

gaelle31

XLDnaute Nouveau
Bonjour,
Je débute avec VBA et les macros et je souhaite créer une macro de mise en forme conditionnelle. Lorsque je l'enregistre elle ne marche pas. J'ai donc décidé de la créer moi même et c'est un rattage total. Voilà donc mon problème:
Je souhaite que sur toute une colonne (O), et ce, jusqu'à ce que les cellules soient vides, la macro execute les conditions suivantes:
Si la cellule = "A", alors mettre un fond vert clair et une écriture vert foncé
Si la cellule = "B", alors fond jaune et écriture orange
Si la cellule = "C", alors fond rosé et écriture bordeaux
Sinon, fond rouge et écriture noire
J'ai tenté ça, mais évidemment ça ne marche pas:

Range("O2").Select
n = 1
Do
n = n + 1

If [O2] = " Efficace" Then
Selection.ColorIndex = 11 And Selection.Font = 35
End If

If vcellule = " Défectueux" Then Selection.ColorIndex = 21 And Selection.Font = 54
End If
If vcellule = " Critique" Then Selection.ColorIndex = 1 And Selection.Font = 30
Else: Selection.ColorIndex = 45 And Selection.Font = 36
End If
Loop Until IsEmpty(Cells(n, 1))

Merci beaucoup pour votre aide....
 

Dranreb

XLDnaute Barbatruc
Re : urgent: boucle + if avec coloration des cellules

Bonjour.
Pourquoi n'avez vous pas essayé simplement une vraie mise en forme conditionnelle tell qu'Exce le permet ?

À part ça c'est ColorIndex pour la police comme pour le fond mais de la propriété Font pour la police et de la propriété Interior pour l'autre. L'objet Range a ces deux objets dans ses propriété mais n'a en lui même pas de propriété CororIndex. Tout cela vous est expliqué dans l'aide par touche F1 sur éléments de langages des instructions qui plantent. Voir les rubriques "S'applique à" et "Propriétés"

À+
 

gaelle31

XLDnaute Nouveau
Re : urgent: boucle + if avec coloration des cellules

Bonjour.
Pourquoi n'avez vous pas essayé simplement une vraie mise en forme conditionnelle tell qu'Exce le permet ?

À part ça c'est ColorIndex pour la police comme pour le fond mais de la propriété Font pour la police et de la propriété Interior pour l'autre. L'objet Range a ces deux objets dans ses propriété mais n'a en lui même pas de propriété CororIndex. Tout cela vous est expliqué dans l'aide par touche F1 sur éléments de langages des instructions qui plantent. Voir les rubriques "S'applique à" et "Propriétés"

À+

Merci pour ta réponse; mais je ne pouvais utiliser la simple mise en forme d'Excel car j'ai besoin qu'elle se fasse automatiquement dans toute une colonne après un calcul que fait une macro. J'ai essayé d'enregistrer la mise en forme dans la colonne mais elle ne reste pas et j'ai même enregistré la macro de mise en forme conditionnelle mais elle ne marche pas (débogage)! Donc j'avais besoin d'une autre solution.
Mais tout va bien PierreJean me l'a donnée sur un autre post que j'avais mis ce matin sur le forum.
 

Discussions similaires

Réponses
5
Affichages
198

Statistiques des forums

Discussions
312 338
Messages
2 087 398
Membres
103 537
dernier inscrit
alisafred974