Opérateurs Like & InStr [Résolu]

Messages postés
19
Date d'inscription
dimanche 21 décembre 2008
Statut
Membre
Dernière intervention
14 avril 2019
- - Dernière réponse : Whismeril
Messages postés
13397
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
16 juin 2019
- 14 avril 2019 à 17:45
Bonjour,

Je souhaite savoir si il est possible (je n'ai pas trouver la combinaison.../) avec l'opérateur Like de chercher un mot dans une suite de caractère avec les conditions suivantes :
1.Je ne souhaite pas avoir l'info si ce mot est contenu ds un autre => si je cherche le mot Nice, je ne veux pas que l'opérateur soit true avec Berenice
2. Je ne connais pas le nombre de caractères dans les expression ds lesquels je dois chercher le mot
3. je ne connais pas sa position dans l'expression

J'ai fait les mêmes essaie avec l'opérateur InStr.
mon problème est toujours que si j'ai Berenice, avec Nice recherché, l'opérateur est true...

En existe-t-il un autre pour répondre à mon problème...?
Merci de votre aide,
Afficher la suite 

7 réponses

Messages postés
1
Date d'inscription
jeudi 21 février 2019
Statut
Membre
Dernière intervention
3 avril 2019
0
Merci
Bonjour

Je n'ai pas testé, mais dans ton like essayes "* lemot *" en fait un intégrant un espace entre l'astérisque et le mot avant et après.

Pas testé.

Philippe
Commenter la réponse de Philippe_JOCHMANS
Messages postés
19
Date d'inscription
dimanche 21 décembre 2008
Statut
Membre
Dernière intervention
14 avril 2019
0
Merci
Ah pétart .... bien vu !
Je vais essayé ey je te dis. Mais ça sent la solution possible !
Merciiiii Philippe !
Commenter la réponse de ZEPS2
Messages postés
19
Date d'inscription
dimanche 21 décembre 2008
Statut
Membre
Dernière intervention
14 avril 2019
0
Merci
Bon, j'y ai cru.... ça ne fonctionne pas...:/
Commenter la réponse de ZEPS2
Messages postés
13397
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
16 juin 2019
279
0
Merci
Bonjour, en fait il faut mettre tous les délimiteurs de mots, l'espaces, toute la ponctuation, le début de texte, le fin de texte, le retour à la ligne etc...
Avec les outils vba ça se complique assez vite.

Il existe un outils universel -> l'expression régulière (regex), qui existe en vba et possède une syntaxe (pattern) pour trouver un mot
\bnice\b
en l'état ça cherche nice en minuscule, mais on peut mette l'option IgnoreCase.

Un petit tuto
https://www.commentcamarche.net/faq/41005-vba-initiation-aux-expressions-rationnelles

Quand j'étais petit, la mer Morte n'était que malade.
George Burns
Commenter la réponse de Whismeril
Messages postés
19
Date d'inscription
dimanche 21 décembre 2008
Statut
Membre
Dernière intervention
14 avril 2019
0
Merci
Ah ben si...
Heuuuu...je donne des news si pb !
Merci encore !
Commenter la réponse de ZEPS2
Messages postés
19
Date d'inscription
dimanche 21 décembre 2008
Statut
Membre
Dernière intervention
14 avril 2019
0
Merci
Merci Whismeril de ton apport. Et excuse moi du délai, j'ai eu un gros pb de genou entre les deux...
Ds ton tuto, si j'ai bien compris, on est plutôt ds le cas ou je maîtrise un peu le placement du mot ds la phrase et sa casse. Ce qui n'est pas mon cas.
Pour l'instant je pallie à mon problème en mettant des "_" avant et après les "petits" mots à chercher et pouvant alors se trouver ds d'autres (Nice et Bérénice ds mon exemple). Et c'est gérable comme ça. Sinon, dans ma variable de ma chaîne de caractères à chercher, je mets le maximum de caractères qui se répéteront ds ma source et je n'ai alors plus de problème...

Merci à tous pour vos apports !

Commenter la réponse de ZEPS2
Messages postés
13397
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
16 juin 2019
279
0
Merci
de rien
Commenter la réponse de Whismeril