Si une cellule contient une chaîne de mots

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

criscris11

XLDnaute Accro
Bonjour à tous en ce jour dominical,
Je cherche à développer une petite formule si dans une cellule il y a une certaine chaîne de mot définie tout en sachant que cette chaîne n'est pas toujours placée au même endroit dans la cellule . Voir le fichier-joint.
Merci à tous d'avance et bonne journée.
 

Pièces jointes

Re : Si une cellule contient une chaîne de mots

Monique,
Cela fonctionne nickel avec une petite préférence pour la première formule car il peut y avoir des chaînes de mots différentes avec un mot en commun.
Encore merci et bonne fin de journée à toi et au forum, bien sûr.
 
Re : Si une cellule contient une chaîne de mots

Bonjour Mattharm,
Désolé, je crois que je ne vais pas être à la hauteur pour pouvoir te répondre car mes connaissances en VBA sont faibles (à part quelques bases) mais je pense qu'il y a assez de personnes compétentes sur ce forum pour répondre à ta question.
Bon courage et bonne journée.
 
Re : Si une cellule contient une chaîne de mots

Bonsoir criscris11, Monique, Mattharm, le Forum,

Par VBA :
Code:
[SIZE=2][COLOR=GRAY][B][I]METHODE 1[/I][/B][/COLOR]

    [COLOR=NAVY]If[/COLOR] Range("E1").Value [COLOR=NAVY]Like[/COLOR] "*médaille en chocolat*" [COLOR=NAVY]Then[/COLOR]
        Range("B1").Value = ""
    [COLOR=NAVY]Else[/COLOR]
        Range("B1").Value = Range("A1").Value
    [COLOR=NAVY]End If[/COLOR]
[/SIZE]
OU
Code:
[SIZE=2][COLOR=GRAY][B][I]METHODE 2[/I][/B][/COLOR]

    [COLOR=NAVY]If[/COLOR] InStr(Range("E1").Value, "médaille en chocolat") > 0 [COLOR=NAVY]Then[/COLOR]
        Range("B1").Value = ""
    [COLOR=NAVY]Else[/COLOR]
        Range("B1").Value = Range("A1").Value
    [COLOR=NAVY]End If[/COLOR]
[/SIZE]
OU les mêmes simplifiées :
Code:
[SIZE=2][COLOR=GRAY][B][I]METHODE 1 SIMPLIFIÉE[/I][/B][/COLOR]

    Range("B1") = IIf(Range("E1") [COLOR=NAVY]Like[/COLOR] "*médaille en chocolat*", "", Range("A1"))
[/SIZE]
Code:
[SIZE=2][COLOR=GRAY][B][I]METHODE 2 SIMPLIFIÉE[/I][/B][/COLOR]

    Range("B1") = IIf(InStr(Range("E1"), "médaille en chocolat"), "", Range("A1"))
[/SIZE]
Et comme l'indique très justement Monique :
Code:
[SIZE=2]    Range("B1") = IIf(Range("E1") [COLOR=NAVY]Like[/COLOR] "*choc*", "", Range("A1"))
[/SIZE]
devrait suffire...

Cordialement,
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour