OVH Cloud OVH Cloud

MFC sur ligne en fonction d'un mot colonne

35 réponses
Avatar
BIANCAV
Bonjour,
Comment puis mettre une couleur sur toutes les lignes ou se trouve un mot en
colonne F et bien sur qu'il prenne une autre couleurs si autre mot et ce
jusqu'à 8 mots différents.
Merci

5 réponses

1 2 3 4
Avatar
BIANCAV
http://cjoint.com/?kevTCLKEGn
Bonsoir,
Voilà la base. J'ai l'impression de te parler chinois !
Merci

"FxM" a écrit dans le message de news:

Hello BiancaV,

Pourrais-tu préciser :
Elle s'éxécute mais
Qui est "Elle" ? ma macro ou la tienne ? (tu peux m'envoyer le fichier ?)


partiellement seulement sur le première ligne
quelle est cette ligne ?

La macro est définie pour travailler sur les lignes 3 à 50 (donc pas avant
et pas après), sur la colonne H.

et ne change rien si moi je change le groupe.
Peut-être que tes évènements ont été rendus inactifs [encore un coup de

GeeDee ça ;o) ] Pour les réactiver, macro :o)
sub reactive()
application.enableevents = true
end sub


J'accepte toute solution à moins que décidement les macros ne soient
pas pour moi !
Mais si, on s'y fait :o)


@+
FxM









Bonjour,
Je suis sous excel 2002 et windows XP edition familiale. Elle s'éxécute
mais partiellement seulement sur le première ligne et ne change rien si
moi je change le groupe. Peut-être que moi je devrais prendre du jurançon
à défaut de disque dur !
J'accepte toute solution à moins que décidement les macros ne soient pas
pour moi !
"FxM" a écrit dans le message de news:
Ow$
Bonsoir,

Du jurancon ? Si seulement (moi qui n'en boit pas) !
En fait c'est plutôt un disque dur que je vais tenter de digérer ...
surtout s'il faut que je réinstalle à partir de zéro due to "bad
cluster" and "already committed" (arggh).
Ca va devoir attendre un peu car 2 déplacements demain et mercredi
matin.

Bref, en attendant de solutionner, j'ai testé la macro qui semble
fonctionner chez moi (XL2002).
Lien -> http://cjoint.com/?kcwZyn8rIZ

Je recommande donc à Bianca d'insérer l'instruction stop là :
Private Sub Worksheet_Change(ByVal Target As Range)
stop '<<<<<----- ICI
Dim c
Cette instruction va permettre de vérifier si la macro est bien appelée
(en stoppant la macro et mettant la ligne en jaune).
Si oui, placer une apostrophe devant stop et presser F5 pour poursuivre
la macro.
Si pas appelée, vérifier le nom de la macro et la position (dans le
module de la feuille où se trouve H3:H50).

Détail qui a son importance ... Pour Excel, "CN" est différent de "cn",
de "Cn" et aussi de "cN", de "CN " ou " CN" et autres variations. Si tu
veux s'affranchir des majuscules, tu peux remplacer :
Select Case c
par
Select Case UCase(c)
Ucase mettant en majuscule ce qui est entre parenthèses.



@+
FxM




bonjour biancaV, digne soeur de AV, chrisV et PaulV....
FxM vient juste de partir en course (il cherche du jurançon pour aller
avec le foie gras)
tu as une ligne de trop....
si tu supprimes Sub lignecouleur() : ta macro s'exécutera chaque fois
que tu entreras, dans une de tes cellules de la plage H3:H50, CN, PO,
CA, etc.....
si tu supprimes Private Sub Worksheet_Change(ByVal Target As Range) :
tu as une zolie macro qui s'appelle "lignecouleur" et que tu vas
pouvoir exécuter autant de fois que tu voudras, soit via
Outils/Macro/Macros (tu vas la voir dans la boîte qui s'affiche, tu la
sélectionnes et tu cliques sur le bouton Exécuter), soit en créant un
bouton sur ta feuille mais cela fera l'objet d'une prochaine leçon de
VBA
HTH
jps
PS. si tu veux que la macro "lignecouleur" s'exécute dans n'importe
quelle feuille de ton classeur, il faudra la mettre dans un module,
ceci pouvant faire l'objet d'une troisième leçon....

"BIANCAV" a écrit dans le message de news:

Re, je l'ai mise avec ' car il bloquait, ce qu'il me refait
maintenant. J'ai du chemin à faire !!
Sub lignecouleur() Il bloque à cette ligne là il me dit End Sub
attendu
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c
For Each c In Range("$h$3:$h$50")
Select Case c
Case "CN"
Rows(c.Row).Interior.ColorIndex = 35
Case "PO"
Rows(c.Row).Interior.ColorIndex = 39
Case "CA"
Rows(c.Row).Interior.ColorIndex = 38
Case "CO"
Rows(c.Row).Interior.ColorIndex = 34
Case "PI"
Rows(c.Row).Interior.ColorIndex = 40
Case "CR"
Rows(c.Row).Interior.ColorIndex = 37
Case "D"
Rows(c.Row).Interior.ColorIndex = 36
Case "OI"
Rows(c.Row).Interior.ColorIndex = 4
Case Else
Rows(c.Row).Interior.ColorIndex = xlNone
End Select
Next c
End Sub
"FxM" a écrit dans le message de news:

Bonjour,

Plusieurs causes possibles dont :
- non déclenchement de la macro. La macro peut se déclencher seule si
le code est dans le module de la feuille voulue et que la macro se
nomme
Private Sub Worksheet_Change(ByVal Target As Range)

Placer une apostrophe dans une ligne revient à dire que ce qui suit
dans la ligne est un commentaire et donc ignoré.

- les lignes indiquées, à savoir
Case Else
Rows(c.Row).Interior.ColorIndex = xlnone
sont à placer en bas juste avec le "end select" (sans les guillemets)

- dans ton code il y a un petit s dans la plage de cellules h3 à
hs50.
Es-tu sûre de ce s ??

- les cellules sont déjà de la bonne couleur et la macro peut (ce
n'est pas sûr) s'exécuter sans que tu ne voies rien.

- ...

Le code dans la feuille devrait être (non testé) :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c
For Each c In Range("$h$3:$h50")
Select Case c
Case "CN":Rows(c.Row).Interior.ColorIndex = 35
Case "PO":Rows(c.Row).Interior.ColorIndex = 39
Case "CA":Rows(c.Row).Interior.ColorIndex = 38
Case "CO":Rows(c.Row).Interior.ColorIndex = 34
Case "PI":Rows(c.Row).Interior.ColorIndex = 40
Case "CR":Rows(c.Row).Interior.ColorIndex = 37
Case "D":Rows(c.Row).Interior.ColorIndex = 36
Case "OI":Rows(c.Row).Interior.ColorIndex = 4
Case Else:Rows(c.Row).Interior.ColorIndex = xlnone
End Select
Next c
End Sub

Voilà, voilà

@+
FxM


Bonjour,
Et pourquoi maintenant il ne m'éxécute plus rien ?
Merci de vos connaissances
"FxM" a écrit dans le message de news:
u$
Bonsoir,

Case Else
Rows(c.Row).Interior.ColorIndex = xlnone

Tu te mets aux macros ? :o)

@+
FxM



Bonsoir,
Tout vient à point à celui qui sait attendre, j'ai enfin réussi à
faire le select case, sauf que moi je veux que s'il n'y a rien il
ne color pas l'intérieur. En plus qd je fais un changement cad que
j'enlève les lettres et que j'exécute de nouveau il ne change pas
mes couleurs mises avec la précedente exécution. C'est pas cool !
Une solution est-elle envisageable.
Sub lignecouleur()
'
' lignecouleur Macro
' Macro enregistrée le 01/10/2006 par Véronique
'Private Sub Worksheet_Change(ByVal Target As Range)

Dim c
For Each c In Range("$h$3:$hs50")
Select Case c
Case "CN"
Rows(c.Row).Interior.ColorIndex = 35
Case "PO"
Rows(c.Row).Interior.ColorIndex = 39
Case "CA"
Rows(c.Row).Interior.ColorIndex = 38
Case "CO"
Rows(c.Row).Interior.ColorIndex = 34
Case "PI"
Rows(c.Row).Interior.ColorIndex = 40
Case "CR"
Rows(c.Row).Interior.ColorIndex = 37
Case "D"
Rows(c.Row).Interior.ColorIndex = 36
Case "OI"
Rows(c.Row).Interior.ColorIndex = 4
'Case Else
'Rows(c.Row).Interior.ColorIndex = 2
End Select
Next c

End Sub
"Stéphan DuQuébec" a
écrit dans le message de news:

Juste parce que le foie gras m'intéresse.....

Moi, j'aime mieux travailler avec des Select Case.

Tu copies donc, de la même façon que Céline expliquait, ce qui
suit:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim c
For Each c In Range("ICI LE NOM DE TA PLAGE NOMMÉE")
Select Case c
Case "LE FOIE"
Rows(c.Row).Font.ColorIndex = 5
Case "GRAS POUR"
Rows(c.Row).Font.ColorIndex = 46
Case "MON AMI"
Rows(c.Row).Font.ColorIndex = 29
Case "STÉPHAN DU QUÉBEC"
Rows(c.Row).Font.ColorIndex = 3
Case "UNE FOIS"
Rows(c.Row).Font.ColorIndex = 14
Case "DEUX FOIS"
Rows(c.Row).Font.ColorIndex = 10
Case "TROIS FOIS"
Rows(c.Row).Font.ColorIndex = 53
Case "VENDU !!!!!"
Rows(c.Row).Font.ColorIndex = 7
Case Else
Rows(c.Row).Font.ColorIndex = 1
End Select
Next c

End Sub

Salutations !



Bonjour,
Comment puis mettre une couleur sur toutes les lignes ou se
trouve un mot en
colonne F et bien sur qu'il prenne une autre couleurs si autre
mot et ce
jusqu'à 8 mots différents.
Merci























Avatar
FxM
Bonjour,

chinois ? Ca ne va pas être simple !

Les évènements sont liés à mon Excel (donc OK chez moi), la macro est
bien écrite mais placée dans le module "couleurs" et pas dans le module
de la feuille. http://cjoint.com/?kfmPVinhqy

Lorsque tu veux aller dans un module (de feuille ou général), tu dois
double-cliquer sur le module. UN simple clic le sélectionne mais ne
l'ouvre pas.

Et oui, tu peux masquer la ligne pour qu'elle ne soit pas touchée :o)

@+
FxM


http://cjoint.com/?kevTCLKEGn
Bonsoir,
Voilà la base. J'ai l'impression de te parler chinois !
Merci

"FxM" a écrit dans le message de news:

Hello BiancaV,

Pourrais-tu préciser :
Elle s'éxécute mais
Qui est "Elle" ? ma macro ou la tienne ? (tu peux m'envoyer le fichier ?)


partiellement seulement sur le première ligne
quelle est cette ligne ?

La macro est définie pour travailler sur les lignes 3 à 50 (donc pas avant
et pas après), sur la colonne H.

et ne change rien si moi je change le groupe.
Peut-être que tes évènements ont été rendus inactifs [encore un coup de

GeeDee ça ;o) ] Pour les réactiver, macro :o)
sub reactive()
application.enableevents = true
end sub


J'accepte toute solution à moins que décidement les macros ne soient
pas pour moi !
Mais si, on s'y fait :o)


@+
FxM









Bonjour,
Je suis sous excel 2002 et windows XP edition familiale. Elle s'éxécute
mais partiellement seulement sur le première ligne et ne change rien si
moi je change le groupe. Peut-être que moi je devrais prendre du jurançon
à défaut de disque dur !
J'accepte toute solution à moins que décidement les macros ne soient pas
pour moi !
"FxM" a écrit dans le message de news:
Ow$
Bonsoir,

Du jurancon ? Si seulement (moi qui n'en boit pas) !
En fait c'est plutôt un disque dur que je vais tenter de digérer ...
surtout s'il faut que je réinstalle à partir de zéro due to "bad
cluster" and "already committed" (arggh).
Ca va devoir attendre un peu car 2 déplacements demain et mercredi
matin.

Bref, en attendant de solutionner, j'ai testé la macro qui semble
fonctionner chez moi (XL2002).
Lien -> http://cjoint.com/?kcwZyn8rIZ

Je recommande donc à Bianca d'insérer l'instruction stop là :
Private Sub Worksheet_Change(ByVal Target As Range)
stop '<<<<<----- ICI
Dim c
Cette instruction va permettre de vérifier si la macro est bien appelée
(en stoppant la macro et mettant la ligne en jaune).
Si oui, placer une apostrophe devant stop et presser F5 pour poursuivre
la macro.
Si pas appelée, vérifier le nom de la macro et la position (dans le
module de la feuille où se trouve H3:H50).

Détail qui a son importance ... Pour Excel, "CN" est différent de "cn",
de "Cn" et aussi de "cN", de "CN " ou " CN" et autres variations. Si tu
veux s'affranchir des majuscules, tu peux remplacer :
Select Case c
par
Select Case UCase(c)
Ucase mettant en majuscule ce qui est entre parenthèses.



@+
FxM




bonjour biancaV, digne soeur de AV, chrisV et PaulV....
FxM vient juste de partir en course (il cherche du jurançon pour aller
avec le foie gras)
tu as une ligne de trop....
si tu supprimes Sub lignecouleur() : ta macro s'exécutera chaque fois
que tu entreras, dans une de tes cellules de la plage H3:H50, CN, PO,
CA, etc.....
si tu supprimes Private Sub Worksheet_Change(ByVal Target As Range) :
tu as une zolie macro qui s'appelle "lignecouleur" et que tu vas
pouvoir exécuter autant de fois que tu voudras, soit via
Outils/Macro/Macros (tu vas la voir dans la boîte qui s'affiche, tu la
sélectionnes et tu cliques sur le bouton Exécuter), soit en créant un
bouton sur ta feuille mais cela fera l'objet d'une prochaine leçon de
VBA
HTH
jps
PS. si tu veux que la macro "lignecouleur" s'exécute dans n'importe
quelle feuille de ton classeur, il faudra la mettre dans un module,
ceci pouvant faire l'objet d'une troisième leçon....

"BIANCAV" a écrit dans le message de news:

Re, je l'ai mise avec ' car il bloquait, ce qu'il me refait
maintenant. J'ai du chemin à faire !!
Sub lignecouleur() Il bloque à cette ligne là il me dit End Sub
attendu
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c
For Each c In Range("$h$3:$h$50")
Select Case c
Case "CN"
Rows(c.Row).Interior.ColorIndex = 35
Case "PO"
Rows(c.Row).Interior.ColorIndex = 39
Case "CA"
Rows(c.Row).Interior.ColorIndex = 38
Case "CO"
Rows(c.Row).Interior.ColorIndex = 34
Case "PI"
Rows(c.Row).Interior.ColorIndex = 40
Case "CR"
Rows(c.Row).Interior.ColorIndex = 37
Case "D"
Rows(c.Row).Interior.ColorIndex = 36
Case "OI"
Rows(c.Row).Interior.ColorIndex = 4
Case Else
Rows(c.Row).Interior.ColorIndex = xlNone
End Select
Next c
End Sub
"FxM" a écrit dans le message de news:

Bonjour,

Plusieurs causes possibles dont :
- non déclenchement de la macro. La macro peut se déclencher seule si
le code est dans le module de la feuille voulue et que la macro se
nomme
Private Sub Worksheet_Change(ByVal Target As Range)

Placer une apostrophe dans une ligne revient à dire que ce qui suit
dans la ligne est un commentaire et donc ignoré.

- les lignes indiquées, à savoir
Case Else
Rows(c.Row).Interior.ColorIndex = xlnone
sont à placer en bas juste avec le "end select" (sans les guillemets)

- dans ton code il y a un petit s dans la plage de cellules h3 à
hs50.
Es-tu sûre de ce s ??

- les cellules sont déjà de la bonne couleur et la macro peut (ce
n'est pas sûr) s'exécuter sans que tu ne voies rien.

- ...

Le code dans la feuille devrait être (non testé) :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c
For Each c In Range("$h$3:$h50")
Select Case c
Case "CN":Rows(c.Row).Interior.ColorIndex = 35
Case "PO":Rows(c.Row).Interior.ColorIndex = 39
Case "CA":Rows(c.Row).Interior.ColorIndex = 38
Case "CO":Rows(c.Row).Interior.ColorIndex = 34
Case "PI":Rows(c.Row).Interior.ColorIndex = 40
Case "CR":Rows(c.Row).Interior.ColorIndex = 37
Case "D":Rows(c.Row).Interior.ColorIndex = 36
Case "OI":Rows(c.Row).Interior.ColorIndex = 4
Case Else:Rows(c.Row).Interior.ColorIndex = xlnone
End Select
Next c
End Sub

Voilà, voilà

@+
FxM


Bonjour,
Et pourquoi maintenant il ne m'éxécute plus rien ?
Merci de vos connaissances
"FxM" a écrit dans le message de news:
u$
Bonsoir,

Case Else
Rows(c.Row).Interior.ColorIndex = xlnone

Tu te mets aux macros ? :o)

@+
FxM



Bonsoir,
Tout vient à point à celui qui sait attendre, j'ai enfin réussi à
faire le select case, sauf que moi je veux que s'il n'y a rien il
ne color pas l'intérieur. En plus qd je fais un changement cad que
j'enlève les lettres et que j'exécute de nouveau il ne change pas
mes couleurs mises avec la précedente exécution. C'est pas cool !
Une solution est-elle envisageable.
Sub lignecouleur()
'
' lignecouleur Macro
' Macro enregistrée le 01/10/2006 par Véronique
'Private Sub Worksheet_Change(ByVal Target As Range)

Dim c
For Each c In Range("$h$3:$hs50")
Select Case c
Case "CN"
Rows(c.Row).Interior.ColorIndex = 35
Case "PO"
Rows(c.Row).Interior.ColorIndex = 39
Case "CA"
Rows(c.Row).Interior.ColorIndex = 38
Case "CO"
Rows(c.Row).Interior.ColorIndex = 34
Case "PI"
Rows(c.Row).Interior.ColorIndex = 40
Case "CR"
Rows(c.Row).Interior.ColorIndex = 37
Case "D"
Rows(c.Row).Interior.ColorIndex = 36
Case "OI"
Rows(c.Row).Interior.ColorIndex = 4
'Case Else
'Rows(c.Row).Interior.ColorIndex = 2
End Select
Next c

End Sub
"Stéphan DuQuébec" a
écrit dans le message de news:

Juste parce que le foie gras m'intéresse.....

Moi, j'aime mieux travailler avec des Select Case.

Tu copies donc, de la même façon que Céline expliquait, ce qui
suit:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim c
For Each c In Range("ICI LE NOM DE TA PLAGE NOMMÉE")
Select Case c
Case "LE FOIE"
Rows(c.Row).Font.ColorIndex = 5
Case "GRAS POUR"
Rows(c.Row).Font.ColorIndex = 46
Case "MON AMI"
Rows(c.Row).Font.ColorIndex = 29
Case "STÉPHAN DU QUÉBEC"
Rows(c.Row).Font.ColorIndex = 3
Case "UNE FOIS"
Rows(c.Row).Font.ColorIndex = 14
Case "DEUX FOIS"
Rows(c.Row).Font.ColorIndex = 10
Case "TROIS FOIS"
Rows(c.Row).Font.ColorIndex = 53
Case "VENDU !!!!!"
Rows(c.Row).Font.ColorIndex = 7
Case Else
Rows(c.Row).Font.ColorIndex = 1
End Select
Next c

End Sub

Salutations !



Bonjour,
Comment puis mettre une couleur sur toutes les lignes ou se
trouve un mot en
colonne F et bien sur qu'il prenne une autre couleurs si autre
mot et ce
jusqu'à 8 mots différents.
Merci


























Avatar
BIANCAV
Bonsoir,
je regardais juste par acquis de conscience car je pars pour quelque jours
de fiesta vers chez moi, et toi tu me balance un fichier à ouvrir, du
chinois à piger, alors que moi j'en suis déjà au vouvray !
néanmoins merci, j'enregistre et bon week-end
A+
"FxM" a écrit dans le message de news:

Bonjour,

chinois ? Ca ne va pas être simple !

Les évènements sont liés à mon Excel (donc OK chez moi), la macro est bien
écrite mais placée dans le module "couleurs" et pas dans le module de la
feuille. http://cjoint.com/?kfmPVinhqy

Lorsque tu veux aller dans un module (de feuille ou général), tu dois
double-cliquer sur le module. UN simple clic le sélectionne mais ne
l'ouvre pas.

Et oui, tu peux masquer la ligne pour qu'elle ne soit pas touchée :o)

@+
FxM


http://cjoint.com/?kevTCLKEGn
Bonsoir,
Voilà la base. J'ai l'impression de te parler chinois !
Merci

"FxM" a écrit dans le message de news:

Hello BiancaV,

Pourrais-tu préciser :
Elle s'éxécute mais
Qui est "Elle" ? ma macro ou la tienne ? (tu peux m'envoyer le fichier

?)

partiellement seulement sur le première ligne
quelle est cette ligne ?

La macro est définie pour travailler sur les lignes 3 à 50 (donc pas
avant et pas après), sur la colonne H.

et ne change rien si moi je change le groupe.
Peut-être que tes évènements ont été rendus inactifs [encore un coup de

GeeDee ça ;o) ] Pour les réactiver, macro :o)
sub reactive()
application.enableevents = true
end sub


J'accepte toute solution à moins que décidement les macros ne soient
pas pour moi !
Mais si, on s'y fait :o)


@+
FxM









Bonjour,
Je suis sous excel 2002 et windows XP edition familiale. Elle s'éxécute
mais partiellement seulement sur le première ligne et ne change rien si
moi je change le groupe. Peut-être que moi je devrais prendre du
jurançon à défaut de disque dur !
J'accepte toute solution à moins que décidement les macros ne soient
pas pour moi !
"FxM" a écrit dans le message de news:
Ow$
Bonsoir,

Du jurancon ? Si seulement (moi qui n'en boit pas) !
En fait c'est plutôt un disque dur que je vais tenter de digérer ...
surtout s'il faut que je réinstalle à partir de zéro due to "bad
cluster" and "already committed" (arggh).
Ca va devoir attendre un peu car 2 déplacements demain et mercredi
matin.

Bref, en attendant de solutionner, j'ai testé la macro qui semble
fonctionner chez moi (XL2002).
Lien -> http://cjoint.com/?kcwZyn8rIZ

Je recommande donc à Bianca d'insérer l'instruction stop là :
Private Sub Worksheet_Change(ByVal Target As Range)
stop '<<<<<----- ICI
Dim c
Cette instruction va permettre de vérifier si la macro est bien
appelée (en stoppant la macro et mettant la ligne en jaune).
Si oui, placer une apostrophe devant stop et presser F5 pour
poursuivre la macro.
Si pas appelée, vérifier le nom de la macro et la position (dans le
module de la feuille où se trouve H3:H50).

Détail qui a son importance ... Pour Excel, "CN" est différent de
"cn", de "Cn" et aussi de "cN", de "CN " ou " CN" et autres
variations. Si tu veux s'affranchir des majuscules, tu peux remplacer
:
Select Case c
par
Select Case UCase(c)
Ucase mettant en majuscule ce qui est entre parenthèses.



@+
FxM




bonjour biancaV, digne soeur de AV, chrisV et PaulV....
FxM vient juste de partir en course (il cherche du jurançon pour
aller avec le foie gras)
tu as une ligne de trop....
si tu supprimes Sub lignecouleur() : ta macro s'exécutera chaque fois
que tu entreras, dans une de tes cellules de la plage H3:H50, CN, PO,
CA, etc.....
si tu supprimes Private Sub Worksheet_Change(ByVal Target As Range) :
tu as une zolie macro qui s'appelle "lignecouleur" et que tu vas
pouvoir exécuter autant de fois que tu voudras, soit via
Outils/Macro/Macros (tu vas la voir dans la boîte qui s'affiche, tu
la sélectionnes et tu cliques sur le bouton Exécuter), soit en créant
un bouton sur ta feuille mais cela fera l'objet d'une prochaine leçon
de VBA
HTH
jps
PS. si tu veux que la macro "lignecouleur" s'exécute dans n'importe
quelle feuille de ton classeur, il faudra la mettre dans un module,
ceci pouvant faire l'objet d'une troisième leçon....

"BIANCAV" a écrit dans le message de
news:
Re, je l'ai mise avec ' car il bloquait, ce qu'il me refait
maintenant. J'ai du chemin à faire !!
Sub lignecouleur() Il bloque à cette ligne là il me dit End Sub
attendu
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c
For Each c In Range("$h$3:$h$50")
Select Case c
Case "CN"
Rows(c.Row).Interior.ColorIndex = 35
Case "PO"
Rows(c.Row).Interior.ColorIndex = 39
Case "CA"
Rows(c.Row).Interior.ColorIndex = 38
Case "CO"
Rows(c.Row).Interior.ColorIndex = 34
Case "PI"
Rows(c.Row).Interior.ColorIndex = 40
Case "CR"
Rows(c.Row).Interior.ColorIndex = 37
Case "D"
Rows(c.Row).Interior.ColorIndex = 36
Case "OI"
Rows(c.Row).Interior.ColorIndex = 4
Case Else
Rows(c.Row).Interior.ColorIndex = xlNone
End Select
Next c
End Sub
"FxM" a écrit dans le message de news:

Bonjour,

Plusieurs causes possibles dont :
- non déclenchement de la macro. La macro peut se déclencher seule
si le code est dans le module de la feuille voulue et que la macro
se nomme
Private Sub Worksheet_Change(ByVal Target As Range)

Placer une apostrophe dans une ligne revient à dire que ce qui suit
dans la ligne est un commentaire et donc ignoré.

- les lignes indiquées, à savoir
Case Else
Rows(c.Row).Interior.ColorIndex = xlnone
sont à placer en bas juste avec le "end select" (sans les
guillemets)

- dans ton code il y a un petit s dans la plage de cellules h3 à
hs50.
Es-tu sûre de ce s ??

- les cellules sont déjà de la bonne couleur et la macro peut (ce
n'est pas sûr) s'exécuter sans que tu ne voies rien.

- ...

Le code dans la feuille devrait être (non testé) :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c
For Each c In Range("$h$3:$h50")
Select Case c
Case "CN":Rows(c.Row).Interior.ColorIndex = 35
Case "PO":Rows(c.Row).Interior.ColorIndex = 39
Case "CA":Rows(c.Row).Interior.ColorIndex = 38
Case "CO":Rows(c.Row).Interior.ColorIndex = 34
Case "PI":Rows(c.Row).Interior.ColorIndex = 40
Case "CR":Rows(c.Row).Interior.ColorIndex = 37
Case "D":Rows(c.Row).Interior.ColorIndex = 36
Case "OI":Rows(c.Row).Interior.ColorIndex = 4
Case Else:Rows(c.Row).Interior.ColorIndex = xlnone
End Select
Next c
End Sub

Voilà, voilà

@+
FxM


Bonjour,
Et pourquoi maintenant il ne m'éxécute plus rien ?
Merci de vos connaissances
"FxM" a écrit dans le message de news:
u$
Bonsoir,

Case Else
Rows(c.Row).Interior.ColorIndex = xlnone

Tu te mets aux macros ? :o)

@+
FxM



Bonsoir,
Tout vient à point à celui qui sait attendre, j'ai enfin réussi
à faire le select case, sauf que moi je veux que s'il n'y a rien
il ne color pas l'intérieur. En plus qd je fais un changement
cad que j'enlève les lettres et que j'exécute de nouveau il ne
change pas mes couleurs mises avec la précedente exécution.
C'est pas cool ! Une solution est-elle envisageable.
Sub lignecouleur()
'
' lignecouleur Macro
' Macro enregistrée le 01/10/2006 par Véronique
'Private Sub Worksheet_Change(ByVal Target As Range)

Dim c
For Each c In Range("$h$3:$hs50")
Select Case c
Case "CN"
Rows(c.Row).Interior.ColorIndex = 35
Case "PO"
Rows(c.Row).Interior.ColorIndex = 39
Case "CA"
Rows(c.Row).Interior.ColorIndex = 38
Case "CO"
Rows(c.Row).Interior.ColorIndex = 34
Case "PI"
Rows(c.Row).Interior.ColorIndex = 40
Case "CR"
Rows(c.Row).Interior.ColorIndex = 37
Case "D"
Rows(c.Row).Interior.ColorIndex = 36
Case "OI"
Rows(c.Row).Interior.ColorIndex = 4
'Case Else
'Rows(c.Row).Interior.ColorIndex = 2
End Select
Next c

End Sub
"Stéphan DuQuébec" a
écrit dans le message de news:

Juste parce que le foie gras m'intéresse.....

Moi, j'aime mieux travailler avec des Select Case.

Tu copies donc, de la même façon que Céline expliquait, ce qui
suit:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim c
For Each c In Range("ICI LE NOM DE TA PLAGE NOMMÉE")
Select Case c
Case "LE FOIE"
Rows(c.Row).Font.ColorIndex = 5
Case "GRAS POUR"
Rows(c.Row).Font.ColorIndex = 46
Case "MON AMI"
Rows(c.Row).Font.ColorIndex = 29
Case "STÉPHAN DU QUÉBEC"
Rows(c.Row).Font.ColorIndex = 3
Case "UNE FOIS"
Rows(c.Row).Font.ColorIndex = 14
Case "DEUX FOIS"
Rows(c.Row).Font.ColorIndex = 10
Case "TROIS FOIS"
Rows(c.Row).Font.ColorIndex = 53
Case "VENDU !!!!!"
Rows(c.Row).Font.ColorIndex = 7
Case Else
Rows(c.Row).Font.ColorIndex = 1
End Select
Next c

End Sub

Salutations !



Bonjour,
Comment puis mettre une couleur sur toutes les lignes ou se
trouve un mot en
colonne F et bien sur qu'il prenne une autre couleurs si autre
mot et ce
jusqu'à 8 mots différents.
Merci



























Avatar
BIANCAV
effectivement, ca marche en plus ma ligne est masquée, j'aurais du laisser
les autres commentaires pour les corrections. De toute façon chez toi ça
marche tjrs, moi il me manque des accès, des i... et bien d'autres
Encore merci
"FxM" a écrit dans le message de news:

Bonjour,

chinois ? Ca ne va pas être simple !

Les évènements sont liés à mon Excel (donc OK chez moi), la macro est bien
écrite mais placée dans le module "couleurs" et pas dans le module de la
feuille. http://cjoint.com/?kfmPVinhqy

Lorsque tu veux aller dans un module (de feuille ou général), tu dois
double-cliquer sur le module. UN simple clic le sélectionne mais ne
l'ouvre pas.

Et oui, tu peux masquer la ligne pour qu'elle ne soit pas touchée :o)

@+
FxM


http://cjoint.com/?kevTCLKEGn
Bonsoir,
Voilà la base. J'ai l'impression de te parler chinois !
Merci

"FxM" a écrit dans le message de news:

Hello BiancaV,

Pourrais-tu préciser :
Elle s'éxécute mais
Qui est "Elle" ? ma macro ou la tienne ? (tu peux m'envoyer le fichier

?)

partiellement seulement sur le première ligne
quelle est cette ligne ?

La macro est définie pour travailler sur les lignes 3 à 50 (donc pas
avant et pas après), sur la colonne H.

et ne change rien si moi je change le groupe.
Peut-être que tes évènements ont été rendus inactifs [encore un coup de

GeeDee ça ;o) ] Pour les réactiver, macro :o)
sub reactive()
application.enableevents = true
end sub


J'accepte toute solution à moins que décidement les macros ne soient
pas pour moi !
Mais si, on s'y fait :o)


@+
FxM









Bonjour,
Je suis sous excel 2002 et windows XP edition familiale. Elle s'éxécute
mais partiellement seulement sur le première ligne et ne change rien si
moi je change le groupe. Peut-être que moi je devrais prendre du
jurançon à défaut de disque dur !
J'accepte toute solution à moins que décidement les macros ne soient
pas pour moi !
"FxM" a écrit dans le message de news:
Ow$
Bonsoir,

Du jurancon ? Si seulement (moi qui n'en boit pas) !
En fait c'est plutôt un disque dur que je vais tenter de digérer ...
surtout s'il faut que je réinstalle à partir de zéro due to "bad
cluster" and "already committed" (arggh).
Ca va devoir attendre un peu car 2 déplacements demain et mercredi
matin.

Bref, en attendant de solutionner, j'ai testé la macro qui semble
fonctionner chez moi (XL2002).
Lien -> http://cjoint.com/?kcwZyn8rIZ

Je recommande donc à Bianca d'insérer l'instruction stop là :
Private Sub Worksheet_Change(ByVal Target As Range)
stop '<<<<<----- ICI
Dim c
Cette instruction va permettre de vérifier si la macro est bien
appelée (en stoppant la macro et mettant la ligne en jaune).
Si oui, placer une apostrophe devant stop et presser F5 pour
poursuivre la macro.
Si pas appelée, vérifier le nom de la macro et la position (dans le
module de la feuille où se trouve H3:H50).

Détail qui a son importance ... Pour Excel, "CN" est différent de
"cn", de "Cn" et aussi de "cN", de "CN " ou " CN" et autres
variations. Si tu veux s'affranchir des majuscules, tu peux remplacer
:
Select Case c
par
Select Case UCase(c)
Ucase mettant en majuscule ce qui est entre parenthèses.



@+
FxM




bonjour biancaV, digne soeur de AV, chrisV et PaulV....
FxM vient juste de partir en course (il cherche du jurançon pour
aller avec le foie gras)
tu as une ligne de trop....
si tu supprimes Sub lignecouleur() : ta macro s'exécutera chaque fois
que tu entreras, dans une de tes cellules de la plage H3:H50, CN, PO,
CA, etc.....
si tu supprimes Private Sub Worksheet_Change(ByVal Target As Range) :
tu as une zolie macro qui s'appelle "lignecouleur" et que tu vas
pouvoir exécuter autant de fois que tu voudras, soit via
Outils/Macro/Macros (tu vas la voir dans la boîte qui s'affiche, tu
la sélectionnes et tu cliques sur le bouton Exécuter), soit en créant
un bouton sur ta feuille mais cela fera l'objet d'une prochaine leçon
de VBA
HTH
jps
PS. si tu veux que la macro "lignecouleur" s'exécute dans n'importe
quelle feuille de ton classeur, il faudra la mettre dans un module,
ceci pouvant faire l'objet d'une troisième leçon....

"BIANCAV" a écrit dans le message de
news:
Re, je l'ai mise avec ' car il bloquait, ce qu'il me refait
maintenant. J'ai du chemin à faire !!
Sub lignecouleur() Il bloque à cette ligne là il me dit End Sub
attendu
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c
For Each c In Range("$h$3:$h$50")
Select Case c
Case "CN"
Rows(c.Row).Interior.ColorIndex = 35
Case "PO"
Rows(c.Row).Interior.ColorIndex = 39
Case "CA"
Rows(c.Row).Interior.ColorIndex = 38
Case "CO"
Rows(c.Row).Interior.ColorIndex = 34
Case "PI"
Rows(c.Row).Interior.ColorIndex = 40
Case "CR"
Rows(c.Row).Interior.ColorIndex = 37
Case "D"
Rows(c.Row).Interior.ColorIndex = 36
Case "OI"
Rows(c.Row).Interior.ColorIndex = 4
Case Else
Rows(c.Row).Interior.ColorIndex = xlNone
End Select
Next c
End Sub
"FxM" a écrit dans le message de news:

Bonjour,

Plusieurs causes possibles dont :
- non déclenchement de la macro. La macro peut se déclencher seule
si le code est dans le module de la feuille voulue et que la macro
se nomme
Private Sub Worksheet_Change(ByVal Target As Range)

Placer une apostrophe dans une ligne revient à dire que ce qui suit
dans la ligne est un commentaire et donc ignoré.

- les lignes indiquées, à savoir
Case Else
Rows(c.Row).Interior.ColorIndex = xlnone
sont à placer en bas juste avec le "end select" (sans les
guillemets)

- dans ton code il y a un petit s dans la plage de cellules h3 à
hs50.
Es-tu sûre de ce s ??

- les cellules sont déjà de la bonne couleur et la macro peut (ce
n'est pas sûr) s'exécuter sans que tu ne voies rien.

- ...

Le code dans la feuille devrait être (non testé) :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c
For Each c In Range("$h$3:$h50")
Select Case c
Case "CN":Rows(c.Row).Interior.ColorIndex = 35
Case "PO":Rows(c.Row).Interior.ColorIndex = 39
Case "CA":Rows(c.Row).Interior.ColorIndex = 38
Case "CO":Rows(c.Row).Interior.ColorIndex = 34
Case "PI":Rows(c.Row).Interior.ColorIndex = 40
Case "CR":Rows(c.Row).Interior.ColorIndex = 37
Case "D":Rows(c.Row).Interior.ColorIndex = 36
Case "OI":Rows(c.Row).Interior.ColorIndex = 4
Case Else:Rows(c.Row).Interior.ColorIndex = xlnone
End Select
Next c
End Sub

Voilà, voilà

@+
FxM


Bonjour,
Et pourquoi maintenant il ne m'éxécute plus rien ?
Merci de vos connaissances
"FxM" a écrit dans le message de news:
u$
Bonsoir,

Case Else
Rows(c.Row).Interior.ColorIndex = xlnone

Tu te mets aux macros ? :o)

@+
FxM



Bonsoir,
Tout vient à point à celui qui sait attendre, j'ai enfin réussi
à faire le select case, sauf que moi je veux que s'il n'y a rien
il ne color pas l'intérieur. En plus qd je fais un changement
cad que j'enlève les lettres et que j'exécute de nouveau il ne
change pas mes couleurs mises avec la précedente exécution.
C'est pas cool ! Une solution est-elle envisageable.
Sub lignecouleur()
'
' lignecouleur Macro
' Macro enregistrée le 01/10/2006 par Véronique
'Private Sub Worksheet_Change(ByVal Target As Range)

Dim c
For Each c In Range("$h$3:$hs50")
Select Case c
Case "CN"
Rows(c.Row).Interior.ColorIndex = 35
Case "PO"
Rows(c.Row).Interior.ColorIndex = 39
Case "CA"
Rows(c.Row).Interior.ColorIndex = 38
Case "CO"
Rows(c.Row).Interior.ColorIndex = 34
Case "PI"
Rows(c.Row).Interior.ColorIndex = 40
Case "CR"
Rows(c.Row).Interior.ColorIndex = 37
Case "D"
Rows(c.Row).Interior.ColorIndex = 36
Case "OI"
Rows(c.Row).Interior.ColorIndex = 4
'Case Else
'Rows(c.Row).Interior.ColorIndex = 2
End Select
Next c

End Sub
"Stéphan DuQuébec" a
écrit dans le message de news:

Juste parce que le foie gras m'intéresse.....

Moi, j'aime mieux travailler avec des Select Case.

Tu copies donc, de la même façon que Céline expliquait, ce qui
suit:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim c
For Each c In Range("ICI LE NOM DE TA PLAGE NOMMÉE")
Select Case c
Case "LE FOIE"
Rows(c.Row).Font.ColorIndex = 5
Case "GRAS POUR"
Rows(c.Row).Font.ColorIndex = 46
Case "MON AMI"
Rows(c.Row).Font.ColorIndex = 29
Case "STÉPHAN DU QUÉBEC"
Rows(c.Row).Font.ColorIndex = 3
Case "UNE FOIS"
Rows(c.Row).Font.ColorIndex = 14
Case "DEUX FOIS"
Rows(c.Row).Font.ColorIndex = 10
Case "TROIS FOIS"
Rows(c.Row).Font.ColorIndex = 53
Case "VENDU !!!!!"
Rows(c.Row).Font.ColorIndex = 7
Case Else
Rows(c.Row).Font.ColorIndex = 1
End Select
Next c

End Sub

Salutations !



Bonjour,
Comment puis mettre une couleur sur toutes les lignes ou se
trouve un mot en
colonne F et bien sur qu'il prenne une autre couleurs si autre
mot et ce
jusqu'à 8 mots différents.
Merci



























Avatar
BIANCAV
Bonsoir,
J'ai eu du mal à retrouver mon fil et même qd lecherchant j'ai vu qu'une
fois j'ai même écorché tes initiales. Qd je te dis que je vois pas clair !!!
Bon j'ai repris ta macro et ho joie divine ça marche. De même pour la
surface ou j'ai galéré 2 jours n'obtenant pas ton résultat, j'ai ajusté mes
lunettes sur les formules noms et une fois de plus j'avais un petit 2 au
lieu de 3, maintenant corrigé tout est decker. De toute façon cela ne peut
venir que de moi alors je m'agace un peu les nerfs !!!
Néanmoins pas beaucoup de progression dans le système.
Bonne soirée et mille merci
A+
"FxM" a écrit dans le message de news:

Bonjour,

chinois ? Ca ne va pas être simple !

Les évènements sont liés à mon Excel (donc OK chez moi), la macro est bien
écrite mais placée dans le module "couleurs" et pas dans le module de la
feuille. http://cjoint.com/?kfmPVinhqy

Lorsque tu veux aller dans un module (de feuille ou général), tu dois
double-cliquer sur le module. UN simple clic le sélectionne mais ne
l'ouvre pas.

Et oui, tu peux masquer la ligne pour qu'elle ne soit pas touchée :o)

@+
FxM


http://cjoint.com/?kevTCLKEGn
Bonsoir,
Voilà la base. J'ai l'impression de te parler chinois !
Merci

"FxM" a écrit dans le message de news:

Hello BiancaV,

Pourrais-tu préciser :
Elle s'éxécute mais
Qui est "Elle" ? ma macro ou la tienne ? (tu peux m'envoyer le fichier

?)

partiellement seulement sur le première ligne
quelle est cette ligne ?

La macro est définie pour travailler sur les lignes 3 à 50 (donc pas
avant et pas après), sur la colonne H.

et ne change rien si moi je change le groupe.
Peut-être que tes évènements ont été rendus inactifs [encore un coup de

GeeDee ça ;o) ] Pour les réactiver, macro :o)
sub reactive()
application.enableevents = true
end sub


J'accepte toute solution à moins que décidement les macros ne soient
pas pour moi !
Mais si, on s'y fait :o)


@+
FxM









Bonjour,
Je suis sous excel 2002 et windows XP edition familiale. Elle s'éxécute
mais partiellement seulement sur le première ligne et ne change rien si
moi je change le groupe. Peut-être que moi je devrais prendre du
jurançon à défaut de disque dur !
J'accepte toute solution à moins que décidement les macros ne soient
pas pour moi !
"FxM" a écrit dans le message de news:
Ow$
Bonsoir,

Du jurancon ? Si seulement (moi qui n'en boit pas) !
En fait c'est plutôt un disque dur que je vais tenter de digérer ...
surtout s'il faut que je réinstalle à partir de zéro due to "bad
cluster" and "already committed" (arggh).
Ca va devoir attendre un peu car 2 déplacements demain et mercredi
matin.

Bref, en attendant de solutionner, j'ai testé la macro qui semble
fonctionner chez moi (XL2002).
Lien -> http://cjoint.com/?kcwZyn8rIZ

Je recommande donc à Bianca d'insérer l'instruction stop là :
Private Sub Worksheet_Change(ByVal Target As Range)
stop '<<<<<----- ICI
Dim c
Cette instruction va permettre de vérifier si la macro est bien
appelée (en stoppant la macro et mettant la ligne en jaune).
Si oui, placer une apostrophe devant stop et presser F5 pour
poursuivre la macro.
Si pas appelée, vérifier le nom de la macro et la position (dans le
module de la feuille où se trouve H3:H50).

Détail qui a son importance ... Pour Excel, "CN" est différent de
"cn", de "Cn" et aussi de "cN", de "CN " ou " CN" et autres
variations. Si tu veux s'affranchir des majuscules, tu peux remplacer
:
Select Case c
par
Select Case UCase(c)
Ucase mettant en majuscule ce qui est entre parenthèses.



@+
FxM




bonjour biancaV, digne soeur de AV, chrisV et PaulV....
FxM vient juste de partir en course (il cherche du jurançon pour
aller avec le foie gras)
tu as une ligne de trop....
si tu supprimes Sub lignecouleur() : ta macro s'exécutera chaque fois
que tu entreras, dans une de tes cellules de la plage H3:H50, CN, PO,
CA, etc.....
si tu supprimes Private Sub Worksheet_Change(ByVal Target As Range) :
tu as une zolie macro qui s'appelle "lignecouleur" et que tu vas
pouvoir exécuter autant de fois que tu voudras, soit via
Outils/Macro/Macros (tu vas la voir dans la boîte qui s'affiche, tu
la sélectionnes et tu cliques sur le bouton Exécuter), soit en créant
un bouton sur ta feuille mais cela fera l'objet d'une prochaine leçon
de VBA
HTH
jps
PS. si tu veux que la macro "lignecouleur" s'exécute dans n'importe
quelle feuille de ton classeur, il faudra la mettre dans un module,
ceci pouvant faire l'objet d'une troisième leçon....

"BIANCAV" a écrit dans le message de
news:
Re, je l'ai mise avec ' car il bloquait, ce qu'il me refait
maintenant. J'ai du chemin à faire !!
Sub lignecouleur() Il bloque à cette ligne là il me dit End Sub
attendu
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c
For Each c In Range("$h$3:$h$50")
Select Case c
Case "CN"
Rows(c.Row).Interior.ColorIndex = 35
Case "PO"
Rows(c.Row).Interior.ColorIndex = 39
Case "CA"
Rows(c.Row).Interior.ColorIndex = 38
Case "CO"
Rows(c.Row).Interior.ColorIndex = 34
Case "PI"
Rows(c.Row).Interior.ColorIndex = 40
Case "CR"
Rows(c.Row).Interior.ColorIndex = 37
Case "D"
Rows(c.Row).Interior.ColorIndex = 36
Case "OI"
Rows(c.Row).Interior.ColorIndex = 4
Case Else
Rows(c.Row).Interior.ColorIndex = xlNone
End Select
Next c
End Sub
"FxM" a écrit dans le message de news:

Bonjour,

Plusieurs causes possibles dont :
- non déclenchement de la macro. La macro peut se déclencher seule
si le code est dans le module de la feuille voulue et que la macro
se nomme
Private Sub Worksheet_Change(ByVal Target As Range)

Placer une apostrophe dans une ligne revient à dire que ce qui suit
dans la ligne est un commentaire et donc ignoré.

- les lignes indiquées, à savoir
Case Else
Rows(c.Row).Interior.ColorIndex = xlnone
sont à placer en bas juste avec le "end select" (sans les
guillemets)

- dans ton code il y a un petit s dans la plage de cellules h3 à
hs50.
Es-tu sûre de ce s ??

- les cellules sont déjà de la bonne couleur et la macro peut (ce
n'est pas sûr) s'exécuter sans que tu ne voies rien.

- ...

Le code dans la feuille devrait être (non testé) :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c
For Each c In Range("$h$3:$h50")
Select Case c
Case "CN":Rows(c.Row).Interior.ColorIndex = 35
Case "PO":Rows(c.Row).Interior.ColorIndex = 39
Case "CA":Rows(c.Row).Interior.ColorIndex = 38
Case "CO":Rows(c.Row).Interior.ColorIndex = 34
Case "PI":Rows(c.Row).Interior.ColorIndex = 40
Case "CR":Rows(c.Row).Interior.ColorIndex = 37
Case "D":Rows(c.Row).Interior.ColorIndex = 36
Case "OI":Rows(c.Row).Interior.ColorIndex = 4
Case Else:Rows(c.Row).Interior.ColorIndex = xlnone
End Select
Next c
End Sub

Voilà, voilà

@+
FxM


Bonjour,
Et pourquoi maintenant il ne m'éxécute plus rien ?
Merci de vos connaissances
"FxM" a écrit dans le message de news:
u$
Bonsoir,

Case Else
Rows(c.Row).Interior.ColorIndex = xlnone

Tu te mets aux macros ? :o)

@+
FxM



Bonsoir,
Tout vient à point à celui qui sait attendre, j'ai enfin réussi
à faire le select case, sauf que moi je veux que s'il n'y a rien
il ne color pas l'intérieur. En plus qd je fais un changement
cad que j'enlève les lettres et que j'exécute de nouveau il ne
change pas mes couleurs mises avec la précedente exécution.
C'est pas cool ! Une solution est-elle envisageable.
Sub lignecouleur()
'
' lignecouleur Macro
' Macro enregistrée le 01/10/2006 par Véronique
'Private Sub Worksheet_Change(ByVal Target As Range)

Dim c
For Each c In Range("$h$3:$hs50")
Select Case c
Case "CN"
Rows(c.Row).Interior.ColorIndex = 35
Case "PO"
Rows(c.Row).Interior.ColorIndex = 39
Case "CA"
Rows(c.Row).Interior.ColorIndex = 38
Case "CO"
Rows(c.Row).Interior.ColorIndex = 34
Case "PI"
Rows(c.Row).Interior.ColorIndex = 40
Case "CR"
Rows(c.Row).Interior.ColorIndex = 37
Case "D"
Rows(c.Row).Interior.ColorIndex = 36
Case "OI"
Rows(c.Row).Interior.ColorIndex = 4
'Case Else
'Rows(c.Row).Interior.ColorIndex = 2
End Select
Next c

End Sub
"Stéphan DuQuébec" a
écrit dans le message de news:

Juste parce que le foie gras m'intéresse.....

Moi, j'aime mieux travailler avec des Select Case.

Tu copies donc, de la même façon que Céline expliquait, ce qui
suit:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim c
For Each c In Range("ICI LE NOM DE TA PLAGE NOMMÉE")
Select Case c
Case "LE FOIE"
Rows(c.Row).Font.ColorIndex = 5
Case "GRAS POUR"
Rows(c.Row).Font.ColorIndex = 46
Case "MON AMI"
Rows(c.Row).Font.ColorIndex = 29
Case "STÉPHAN DU QUÉBEC"
Rows(c.Row).Font.ColorIndex = 3
Case "UNE FOIS"
Rows(c.Row).Font.ColorIndex = 14
Case "DEUX FOIS"
Rows(c.Row).Font.ColorIndex = 10
Case "TROIS FOIS"
Rows(c.Row).Font.ColorIndex = 53
Case "VENDU !!!!!"
Rows(c.Row).Font.ColorIndex = 7
Case Else
Rows(c.Row).Font.ColorIndex = 1
End Select
Next c

End Sub

Salutations !



Bonjour,
Comment puis mettre une couleur sur toutes les lignes ou se
trouve un mot en
colonne F et bien sur qu'il prenne une autre couleurs si autre
mot et ce
jusqu'à 8 mots différents.
Merci



























1 2 3 4