Macro remplissage cellules avec mise en forme conditionnelle

Résolu/Fermé
Raphdu Messages postés 46 Date d'inscription mardi 10 septembre 2013 Statut Membre Dernière intervention 17 décembre 2013 - 24 sept. 2013 à 12:31
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 - 24 sept. 2013 à 16:48
Bonjour,

Je cherche une macro (ou autre solution) me permettant de remplir automatiquement toutes les cellules H1 de toutes les feuilles de mon classeur excel, sauf la première, avec la mise en forme conditionnelle suivante:

Si j'écris r dans la cellule: remplissage rouge
Si j'écris n dans la cellule: remplissage noir
Si j'écris v dans la cellule: remplissage vert
Si j'écris rien: pas de remplissage

Qqn a une solution?

Merci par avance.
A voir également:

4 réponses

Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
24 sept. 2013 à 14:05
Bonjour,

S'il s'agit toujours de ton classeur avec 200 onglets, mieux vaut peut-être colorier les onglets :
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
With ActiveSheet
If .Cells(1, 8).Value = "n" Then
.Tab.Color = 1
ElseIf .Cells(1, 8).Value = "r" Then
.Tab.Color = 255
ElseIf .Cells(1, 8).Value = "v" Then
.Tab.Color = 5287936
End If
End With
End Sub
Si c'est bien la cellule, il faut remplacer ".Tab.Color" par ".Cells(1,8).Interior.Color"
0
Raphdu Messages postés 46 Date d'inscription mardi 10 septembre 2013 Statut Membre Dernière intervention 17 décembre 2013 2
24 sept. 2013 à 14:44
Oui il s'agit bien de celui ci.

Ce serait effectivement mieux que l'onglet soit colorié. Mais après, comment faire pour que dans la feuille récapitulative, la couleur de l'onglet soit indiquée dans le tableau en face de la référence?

D'autre part, je n'arrive pas à lancer la macro (j'ai toujours pas saisi comment ça marche les macros..). Je vais dans virtual basic, je clique sur this workbook, je colle la macro que tu m'as donné, puis une fenêtre s'ouvre et me demande le nom de la macro. Et là, qu'importe ce que je rentre, ça m'ouvre une nouvelle fenêtre Module1... Je suis perdue.
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
24 sept. 2013 à 14:52
Ce serait effectivement mieux que l'onglet soit colorié. Mais après, comment faire pour que dans la feuille récapitulative, la couleur de l'onglet soit indiquée dans le tableau en face de la référence?
Chaque chose en son temps, terminons le premier problème...

D'autre part, je n'arrive pas à lancer la macro (j'ai toujours pas saisi comment ça marche les macros..). Je vais dans virtual basic, je clique sur this workbook, je colle la macro que tu m'as donné, puis une fenêtre s'ouvre et me demande le nom de la macro. Et là, qu'importe ce que je rentre, ça m'ouvre une nouvelle fenêtre Module1... Je suis perdue.

Le texte en gras est un mensonge ! En fait, il y a une omission de ta part, tu as dû appuyer sur le bouton "Play". Mais l'intérêt d'utiliser une macro avec un nom prédéfini est qu'elle s'exécute suivant la condition que porte son nom, donc tu ne la lances pas toi-même, sauf en modifiant les cellules H1. Ici
- Workbook --> dans tout le classeur
- SheetChange --> à chaque changement dans une feuille
Comme tu as copié le code, ça marche tout seul (normalement)
0
Raphdu Messages postés 46 Date d'inscription mardi 10 septembre 2013 Statut Membre Dernière intervention 17 décembre 2013 2
24 sept. 2013 à 15:17
Ahhh ok, je vois. Oui j'avais omis de mentionner l'étape play...

Ok. Et donc comment faire pour que dans la feuille récapitulative, la couleur de l'onglet soit indiquée dans le tableau en face de la référence?
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
24 sept. 2013 à 15:35
A quoi ressemble la feuille récapitulative ?
0
Raphdu Messages postés 46 Date d'inscription mardi 10 septembre 2013 Statut Membre Dernière intervention 17 décembre 2013 2
24 sept. 2013 à 15:47
Un tableau avec dans la colonne A, le nom des onglets.
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
24 sept. 2013 à 16:00
On pourrait le faire par macro, mais je pense que le mieux c'est de faire une mise en forme conditionnelle avec la formule INDIRECT (c'est bien toi qui utilises INDIRECT dans cet onglet ?)
0
Raphdu Messages postés 46 Date d'inscription mardi 10 septembre 2013 Statut Membre Dernière intervention 17 décembre 2013 2
24 sept. 2013 à 16:20
Oui c'est bien ça. Qu'est ce que je met dans ma formule pour avoir la couleur des onglets dans les cellules en face des références?

Et aussi, quel est le code couleur pour blanc?
.Tab.Color = ?

Merci!
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
24 sept. 2013 à 16:33
Blanc 0 je pense.
Mais dans le récapitulatif, utilise INDIRECT en renvoyant vers la case H1 de l'onglet qui va bien dans une MFC sur la formule (la formule est):
- INDIRECT(...)="n" --> mise en forme "noir"
- INDIRECT(...)="r" --> mise en forme "rouge"
- INDIRECT(...)="v" --> mise en forme "vert"
0