XL 2013 VBA et mise en forme conditionnelle

Francis L

XLDnaute Nouveau
Bonjour,

J’ai besoin de votre aide car je ne sais pas comment m’y prendre malgré que j’ai beaucoup de recherche sur le web. J’ai un fichier Excel que j’ai fait et j’y ai enregistré une macro. Je désire maintenant lui appliquer une mise en forme conditionnelle. (À être exécuté en dernier)

Voici exactement ce que désire faire. J’ai un tableau de grandeur A1 à R50.
Je désire mettre en surbrillance une partie d’une ligne (de B à H) lorsqu’un mot se retrouve dans la colonne B.

Par exemple si les mots ‘test’ ‘essaie’ et ‘tentative’ sont présent dans la colonne B, les cellules B à H de la ligne contenant ce mot doivent se mettre en surbrillance. Voir en attachement ce que je désire.

J’espère que mon explication est assez précise pour que vous puissiez m’aider.

Merci d’avance

Francis
 

Pièces jointes

  • test.xlsx
    9.8 KB · Affichages: 30
  • test.xlsx
    9.8 KB · Affichages: 36

Paf

XLDnaute Barbatruc
Re : VBA et mise en forme conditionnelle

Bonjour et bienvenue sur XLD

Un essai à rajouter en fin de macro (absente du classeur fourni. Et pour cause....)

Code:
    Worksheets("Feuil1").Range("B2:H50").FormatConditions.Delete
    Worksheets("Feuil1").Range("B2:H50").FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=OU($B2=""Test"";$B2=""Tentative"";$B2=""Essaie"")"
    Worksheets("Feuil1").Range("B2:H50").FormatConditions(1).Interior.ColorIndex = 6

A+
 

Francis L

XLDnaute Nouveau
Re : VBA et mise en forme conditionnelle

Pour 2 raisons.
1. Mise en forme limité à 3 conditions (à moins que je me trompe). J'ai besoin d'une vingtaine.
2. Je ne veut pas faire manuellement la surbrillance sur plusieurs lignes à chaque fois que je vais exécuter ma macro alors que cela pourrait se faire tout seul et me faire sauver du temps.

Bonjour Francis L et bienvenue,

Ce qui pose question, c'est surtout: pourquoi une macro, alors qu'une "vraie" Mise en Forme Conditionnelle ferait le job aussi bien?

[Edit:] salut Paf :)
 

Modeste

XLDnaute Barbatruc
Re : VBA et mise en forme conditionnelle

Re,

Mise en forme limité à 3 conditions (à moins que je me trompe)
Je ne peux pas dire que tu te trompes ... mais ce n'est plus le cas depuis la version ... 2007 :)

J'ai besoin d'une vingtaine
Euh ... de conditions différentes ... ou simplement 20 mentions différentes au lieu des trois que tu avais évoquées? Regarde le fichier de djidji59430: tu as un premier exemple (mais avec un NB.SI, on pourrait raccourcir un peu ... si j'ai compris!?)

Pour ton 2e point ... je n'ai pas compris, en ce qui me concerne!

Maintenant, si tu tiens à une macro, moi je me retire sur la pointe des pieds et je ne serai pas vexé pour un sou! :D
 

Francis L

XLDnaute Nouveau
Re : VBA et mise en forme conditionnelle

Bonjour Paf,

Pourrais-tu m'indiquer exactement on l'insérer. J'ai joint ma macro en attachement.

Bonjour et bienvenue sur XLD

Un essai à rajouter en fin de macro (absente du classeur fourni. Et pour cause....)

Code:
    Worksheets("Feuil1").Range("B2:H50").FormatConditions.Delete
    Worksheets("Feuil1").Range("B2:H50").FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=OU($B2=""Test"";$B2=""Tentative"";$B2=""Essaie"")"
    Worksheets("Feuil1").Range("B2:H50").FormatConditions(1).Interior.ColorIndex = 6

A+
 

Pièces jointes

  • test.docx
    18.2 KB · Affichages: 37
  • test.docx
    18.2 KB · Affichages: 24

Francis L

XLDnaute Nouveau
Re : VBA et mise en forme conditionnelle

Merci pour l'info concernant la MFC.

Il s'agit de 20 mentions.

Re,

Je ne peux pas dire que tu te trompes ... mais ce n'est plus le cas depuis la version ... 2007 :)

Euh ... de conditions différentes ... ou simplement 20 mentions différentes au lieu des trois que tu avais évoquées? Regarde le fichier de djidji59430: tu as un premier exemple (mais avec un NB.SI, on pourrait raccourcir un peu ... si j'ai compris!?)

Pour ton 2e point ... je n'ai pas compris, en ce qui me concerne!

Maintenant, si tu tiens à une macro, moi je me retire sur la pointe des pieds et je ne serai pas vexé pour un sou! :D
 

Paf

XLDnaute Barbatruc
Re : VBA et mise en forme conditionnelle

Re , bonjour Modeste :), djidji59430,

Pourrais-tu m'indiquer exactement on l'insérer. J'ai joint ma macro en attachement.

deux macros dans le roman Word fourni; le code est à placer avant le End Sub de la macro choisi.

la première macro est particulièrement imbuvable, il faudrait envisager de supprimer tous ces "select" . le code gagnerait en clarté et (un peu) en rapidité.

Code:
    Columns("A:B").Select
    Selection.Delete Shift:=xlToLeft

devient

Code:
    Columns("A:B").Delete Shift:=xlToLeft


A+
 

Discussions similaires

Statistiques des forums

Discussions
314 222
Messages
2 107 474
Membres
109 831
dernier inscrit
Alammo53