Couleur police sous conditions
Résolu
cedana
-
cedana -
cedana -
Bonjour,
Je vous expose mon problème. Dans la feuil1 colonne D, j'ai une plage D2:D20 dans laquelle je saisis des lettres B, D, E, F, PR et REV qui correspondent à un code. Ce dont j'ai besoin, c'est qu'à chacune de ces lettres s'applique une couleur de police différente. J'ai fait un essai avec la mise en forme conditionnelle mais il n'y a que 3 conditions alors qu'il en faut 6. Je pense que le code VBA résoudrait ce petit problème. Alors je compte sur votre aide car en VBA je suis un piètre débutant.
Merci par avance.
Je vous expose mon problème. Dans la feuil1 colonne D, j'ai une plage D2:D20 dans laquelle je saisis des lettres B, D, E, F, PR et REV qui correspondent à un code. Ce dont j'ai besoin, c'est qu'à chacune de ces lettres s'applique une couleur de police différente. J'ai fait un essai avec la mise en forme conditionnelle mais il n'y a que 3 conditions alors qu'il en faut 6. Je pense que le code VBA résoudrait ce petit problème. Alors je compte sur votre aide car en VBA je suis un piètre débutant.
Merci par avance.
A voir également:
- Couleur police sous conditions
- Excel cellule couleur si condition texte - Guide
- Changer police facebook - Guide
- Police aptos - Accueil - Bureautique
- Boite a couleur - Télécharger - Divers Photo & Graphisme
- Police instagram - Guide
1 réponse
Bonjour,
Dans la feuille excel concernée, tapez ALT+F11, insertion/module. Y coller ce code :
On lance la procédure depuis la feuille elle même en tapant ALT+F8 sélectionner "couleur_en_fonction_contenu" et exécuter
Bien sur les codes couleurs (de 3 à 8 dans le code) sont à adapter à votre convenance...
Cordialement,
-- Tout problème à sa solution. S'il n'y a pas de solution, ou est le problème? --
Dans la feuille excel concernée, tapez ALT+F11, insertion/module. Y coller ce code :
Sub couleur_en_fonction_contenu() Dim cell As Range For Each cell In Range("D2:D20") If cell = "B" Then cell.Interior.ColorIndex = 3 ElseIf cell = "D" Then cell.Interior.ColorIndex = 4 ElseIf cell = "E" Then cell.Interior.ColorIndex = 5 ElseIf cell = "F" Then cell.Interior.ColorIndex = 6 ElseIf cell = "PR" Then cell.Interior.ColorIndex = 7 ElseIf cell = "REV" Then cell.Interior.ColorIndex = 8 End If Next End Sub
On lance la procédure depuis la feuille elle même en tapant ALT+F8 sélectionner "couleur_en_fonction_contenu" et exécuter
Bien sur les codes couleurs (de 3 à 8 dans le code) sont à adapter à votre convenance...
Cordialement,
-- Tout problème à sa solution. S'il n'y a pas de solution, ou est le problème? --
Je te remercie pour ta réponse ultra rapide, ceci m'a permis d'avancer dans mon projet. J'ai simplement changer cell.Interior.ColorIndex par cell.Font.ColorIndex pour la couleur du texte et ça marche. Mais dans une autre colonne H plage H3:H8 j'ai reporté les mêmes lettres B D E F PR et REV afin de les comptabiliser en I3:I8 avec NB.SI(D2:D20;H3) ect...et la le calcul ne s'effectue pas et pourtant les lettres sont au même format.
Faut-il faire référence au contenu des cellules H3:H8 ? Je me suis aperçu qu'en faisant du copier-coller ça fonctionné. Ex: si je copie H3 qui contient B en D2 le calcul s'effectue. Si vous avez la solution je suis preneur.
Merci encore à Pijaku.
Merci beaucoup pour ton aide. J'ai trouvé la solution pour comptabiliser le nombre de lettres identiques dans la plage D2:D20. J'ai remplacé NB.SI(D2:D20;H3) par NB.SI(D2:D20;"B")
Merci encore pour ta macro .
A+