Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Mettre en fond rouge les mots d'une liste

9 réponses
Avatar
elodie005
Bonsoir,

J'ai un classeur excel avec plusieurs feuilles (nombres variables) et
dans la feuil 1 intitul=E9e "BDD" j'ai en colonne A une liste de mot.

L'id=E9al pour moi serait d'avoir une macro qui surligne automatiquement
en rouge sur les autres feuilles en colonne A les mots qui sont
identiques =E0 ceux de la liste dans BDD.... seulement j'ai peu de
notions en vba... Pouvez-vous m'aider?

Merci d'avance

9 réponses

Avatar
LSteph
Bonjour,

Pas besoin de vba pour cela utilise une MEFC
Format Mise En Forme Conditionelle

Préalable Sélectionner une des feuilles
Insertion Nom Définir ou Définir un Nom
dans nom
mal
iste
puis dans ref à
pointer ta feuille BDD!A1:An et valider

Sur les autres feuilles sélectionne colonne A
Format Mise En Forme Conditionelle
dans le déroulant choisis "La formule est"
=nb.si(maliste;A1)>0

dans le bouton Format choisis ce que tu veux couleur de texte ou de fond.

Cordialement.

--
LSteph


"elodie005" a écrit dans le message de
news:
Bonsoir,

J'ai un classeur excel avec plusieurs feuilles (nombres variables) et
dans la feuil 1 intitulée "BDD" j'ai en colonne A une liste de mot.

L'idéal pour moi serait d'avoir une macro qui surligne automatiquement
en rouge sur les autres feuilles en colonne A les mots qui sont
identiques à ceux de la liste dans BDD.... seulement j'ai peu de
notions en vba... Pouvez-vous m'aider?

Merci d'avance
Avatar
Jacky
Bonjour,

Ceci met en place ce que LSteph (que je salue au passage) préconise de faire à la mimine
Dans un module standard
'-----------------
Sub jj()
Dim sh As Worksheet
With Sheets("BDD")
.Range("a1:a" & .Cells(Rows.Count, 1).End(3).Row).Name = "plage"
End With
For Each sh In ThisWorkbook.Worksheets
If sh.Name <> "BDD" Then
With Sheets(sh.Name)
.Activate
With .Range("a1:a" & .Cells(Rows.Count, 1).End(3).Row)
.Activate
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=NB.SI(plage;A1)>0"
.FormatConditions(1).Interior.ColorIndex = 3
End With
End With
End If
Next
End Sub
'---------------------
Voir ici
http://cjoint.com/?AEljUjuBfOm

--
Salutations
JJ


"LSteph" a écrit dans le message de news: iqd8u7$q9q$
Bonjour,

Pas besoin de vba pour cela utilise une MEFC
Format Mise En Forme Conditionelle

Préalable Sélectionner une des feuilles
Insertion Nom Définir ou Définir un Nom
dans nom
mal
iste
puis dans ref à
pointer ta feuille BDD!A1:An et valider

Sur les autres feuilles sélectionne colonne A
Format Mise En Forme Conditionelle
dans le déroulant choisis "La formule est"
=nb.si(maliste;A1)>0

dans le bouton Format choisis ce que tu veux couleur de texte ou de fond.

Cordialement.

--
LSteph


"elodie005" a écrit dans le message de
news:
Bonsoir,

J'ai un classeur excel avec plusieurs feuilles (nombres variables) et
dans la feuil 1 intitulée "BDD" j'ai en colonne A une liste de mot.

L'idéal pour moi serait d'avoir une macro qui surligne automatiquement
en rouge sur les autres feuilles en colonne A les mots qui sont
identiques à ceux de la liste dans BDD.... seulement j'ai peu de
notions en vba... Pouvez-vous m'aider?

Merci d'avance
Avatar
elodie005
Merci beaucoup à vous deux les deux solutions fonctionnent comme je
l'espérai !!!

On 11 mai, 09:49, "Jacky" wrote:
Bonjour,

Ceci met en place ce que LSteph (que je salue au passage) préconise de faire à la mimine
Dans un module standard
'-----------------
Sub jj()
Dim sh As Worksheet
With Sheets("BDD")
  .Range("a1:a" & .Cells(Rows.Count, 1).End(3).Row).Name = "plage"
End With
For Each sh In ThisWorkbook.Worksheets
  If sh.Name <> "BDD" Then
    With Sheets(sh.Name)
    .Activate
     With .Range("a1:a" & .Cells(Rows.Count, 1).End(3).Row)
      .Activate
      .FormatConditions.Delete
      .FormatConditions.Add Type:=xlExpression, Formula1:= _
                                "=NB.SI (plage;A1)>0"
      .FormatConditions(1).Interior.ColorIndex = 3
      End With
     End With
  End If
Next
End Sub
'---------------------
Voir icihttp://cjoint.com/?AEljUjuBfOm

--
Salutations
JJ

"LSteph" a écrit dans le message de news: iqd8u7 $



> Bonjour,

> Pas besoin de vba pour cela utilise une MEFC
> Format Mise En Forme Conditionelle

> Préalable Sélectionner une des feuilles
> Insertion Nom Définir ou Définir un Nom
> dans nom
> mal
> iste
> puis dans ref  à
> pointer ta feuille BDD!A1:An et valider

> Sur les autres feuilles sélectionne colonne A
> Format Mise En Forme Conditionelle
> dans le déroulant  choisis "La formule est"
> =nb.si(maliste;A1)>0

> dans le bouton Format choisis ce que tu veux couleur de texte ou de fon d.

> Cordialement.

> --
> LSteph

> "elodie005" a écrit dans le message de
>news: .
> Bonsoir,

> J'ai un classeur excel avec plusieurs feuilles (nombres variables) et
> dans la feuil 1 intitulée "BDD" j'ai en colonne A une liste de mot.

> L'idéal pour moi serait d'avoir une macro qui surligne automatiquemen t
> en rouge sur les autres feuilles en colonne A les mots qui sont
> identiques à ceux de la liste dans BDD.... seulement j'ai peu de
> notions en vba... Pouvez-vous m'aider?

> Merci d'avance- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -
Avatar
LSteph
Bien le bonjour Jacky ,

...& tous.
:-)

--
LSteph

"Jacky" a écrit dans le message de
news:iqdf23$8a7$
Bonjour,

Ceci met en place ce que LSteph (que je salue au passage) préconise de
faire à la mimine
Dans un module standard
'-----------------
Sub jj()
Dim sh As Worksheet
With Sheets("BDD")
.Range("a1:a" & .Cells(Rows.Count, 1).End(3).Row).Name = "plage"
End With
For Each sh In ThisWorkbook.Worksheets
If sh.Name <> "BDD" Then
With Sheets(sh.Name)
.Activate
With .Range("a1:a" & .Cells(Rows.Count, 1).End(3).Row)
.Activate
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=NB.SI(plage;A1)>0"
.FormatConditions(1).Interior.ColorIndex = 3
End With
End With
End If
Next
End Sub
'---------------------
Voir ici
http://cjoint.com/?AEljUjuBfOm

--
Salutations
JJ


"LSteph" a écrit dans le message de news:
iqd8u7$q9q$
Bonjour,

Pas besoin de vba pour cela utilise une MEFC
Format Mise En Forme Conditionelle

Préalable Sélectionner une des feuilles
Insertion Nom Définir ou Définir un Nom
dans nom
mal
iste
puis dans ref à
pointer ta feuille BDD!A1:An et valider

Sur les autres feuilles sélectionne colonne A
Format Mise En Forme Conditionelle
dans le déroulant choisis "La formule est"
=nb.si(maliste;A1)>0

dans le bouton Format choisis ce que tu veux couleur de texte ou de fond.

Cordialement.

--
LSteph


"elodie005" a écrit dans le message de
news:
Bonsoir,

J'ai un classeur excel avec plusieurs feuilles (nombres variables) et
dans la feuil 1 intitulée "BDD" j'ai en colonne A une liste de mot.

L'idéal pour moi serait d'avoir une macro qui surligne automatiquement
en rouge sur les autres feuilles en colonne A les mots qui sont
identiques à ceux de la liste dans BDD.... seulement j'ai peu de
notions en vba... Pouvez-vous m'aider?

Merci d'avance





Avatar
elodie005
J'aurai une petite demande complémentaire si c'est possible...

Ces solutions ne marchent pas s'il y a quelquechose d'autre ecrit
après le mot de la liste.

Est-il possible que ça surligne quand la cellule contient un mot de
la liste même s'il est suivi de qualquechose d'autre ?

Merci d'avance pour votre aide


On 11 mai, 19:15, elodie005 wrote:
Merci beaucoup à vous deux les deux solutions fonctionnent comme je
l'espérai !!!

On 11 mai, 09:49, "Jacky" wrote:



> Bonjour,

> Ceci met en place ce que LSteph (que je salue au passage) préconise d e faire à la mimine
> Dans un module standard
> '-----------------
> Sub jj()
> Dim sh As Worksheet
> With Sheets("BDD")
>   .Range("a1:a" & .Cells(Rows.Count, 1).End(3).Row).Name = "plage"
> End With
> For Each sh In ThisWorkbook.Worksheets
>   If sh.Name <> "BDD" Then
>     With Sheets(sh.Name)
>     .Activate
>      With .Range("a1:a" & .Cells(Rows.Count, 1).End(3).Row)
>       .Activate
>       .FormatConditions.Delete
>       .FormatConditions.Add Type:=xlExpression, Formula1:= _
>                                 "=NB. SI(plage;A1)>0"
>       .FormatConditions(1).Interior.ColorIndex = 3
>       End With
>      End With
>   End If
> Next
> End Sub
> '---------------------
> Voir icihttp://cjoint.com/?AEljUjuBfOm

> --
> Salutations
> JJ

> "LSteph" a écrit dans le message de news: iqd8 u7$

> > Bonjour,

> > Pas besoin de vba pour cela utilise une MEFC
> > Format Mise En Forme Conditionelle

> > Préalable Sélectionner une des feuilles
> > Insertion Nom Définir ou Définir un Nom
> > dans nom
> > mal
> > iste
> > puis dans ref  à
> > pointer ta feuille BDD!A1:An et valider

> > Sur les autres feuilles sélectionne colonne A
> > Format Mise En Forme Conditionelle
> > dans le déroulant  choisis "La formule est"
> > =nb.si(maliste;A1)>0

> > dans le bouton Format choisis ce que tu veux couleur de texte ou de f ond.

> > Cordialement.

> > --
> > LSteph

> > "elodie005" a écrit dans le message de
> >news: ...
> > Bonsoir,

> > J'ai un classeur excel avec plusieurs feuilles (nombres variables) et
> > dans la feuil 1 intitulée "BDD" j'ai en colonne A une liste de mot.

> > L'idéal pour moi serait d'avoir une macro qui surligne automatiquem ent
> > en rouge sur les autres feuilles en colonne A les mots qui sont
> > identiques à ceux de la liste dans BDD.... seulement j'ai peu de
> > notions en vba... Pouvez-vous m'aider?

> > Merci d'avance- Masquer le texte des messages précédents -

> - Afficher le texte des messages précédents -- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -
Avatar
MichD
Bonjour,

En attendant que Jacky soit de retour,

As-tu essayé en modifiant la formule de la procédure
"=NB.SI(plage;A1)>0"
comme ceci :
"=NB.SI(plage;A1&"*")>0"

MichD
--------------------------------------------
Avatar
Jacky
Bonjour,

En attendant que Jacky soit de retour,


Ne serait-ce pas...
"=NB.SI(plage;A1 &""*"")>0"

;o))
--
Salutations
JJ


"MichD" a écrit dans le message de news: irg7jb$lfk$
Bonjour,

En attendant que Jacky soit de retour,

As-tu essayé en modifiant la formule de la procédure
"=NB.SI(plage;A1)>0"
comme ceci :
"=NB.SI(plage;A1&"*")>0"

MichD
--------------------------------------------

Avatar
MichD
Comment ? Tu oses publier quelque chose que tu n'aurais pas testé ?
;-))

Je suis d'accord avec toi, les doubles guillemets sont une bonne idée!



MichD
--------------------------------------------
"Jacky" a écrit dans le message de groupe de discussion : irg9n6$r68$

Bonjour,

En attendant que Jacky soit de retour,


Ne serait-ce pas...
"=NB.SI(plage;A1 &""*"")>0"

;o))
--
Salutations
JJ


"MichD" a écrit dans le message de news: irg7jb$lfk$
Bonjour,

En attendant que Jacky soit de retour,

As-tu essayé en modifiant la formule de la procédure
"=NB.SI(plage;A1)>0"
comme ceci :
"=NB.SI(plage;A1&"*")>0"

MichD
--------------------------------------------

Avatar
elodie005
Merci pour vos réponses mais ça n'a pas l'air de marcher...je suis
peut être pas douée

Faut-il également modifier des choses dans :

Range("A1:A10").Select
ActiveWorkbook.Names.Add Name:="plage", RefersToR1C1:="½D!
R1C1:R10C1"
End Sub

Sheets("Feuil2").Select
Range("C3").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(R[-2]C[-2]:R[7]C[-2],plage)"
ActiveCell.FormulaR1C1 = "=COUNTIF(R[-2]C[-2]:R[7]C[-2],plage)>1"
ActiveCell.FormulaR1C1 = "=COUNTIF(R[-2]C[-2]:R[7]C[-2],plage)>1"
ActiveCell.FormulaR1C1 = "=COUNTIF(plage,R[-2]C[-2])>1"
Range("C3").Select

Range("A1:A10").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=NB.SI(plage;A1)>1"
Selection.FormatConditions(1).Interior.ColorIndex = 3
Range("A9").Select

???

Merci d'avance pour votre réponse