Correspondance texte d'une cellule et liste d'expressions
Adlux
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
via55 Messages postés 14512 Date d'inscription Statut Membre Dernière intervention -
via55 Messages postés 14512 Date d'inscription Statut Membre Dernière intervention -
Bonjour, à tous, et merci de l'intérêt que vous portez à ma demande :)
Voici mon problème :
J'ai une cellule excel, pour laquelle j'aimerai vérifier si une partie du texte de celle-ci (logiquement une suite de caractères) est reprise dans une liste de mots.
Par exemple, le texte de ma cellule serait "Bonjour je suis", et j'aimerai savoir si elle correspond à l'une des expression de la liste suivante
- Aurevoir
- Merci
- Bonjour
- etc.
Pour info j'ai atteint un résultat en utilisant CHERCHE+EST.NUM+OU+IF mais la formule est beaucoup trop contraignante car elle implique de tapper dans le critère de CHERCHE tous les mots de la liste et cependant j'en ai beaucoup trop (environ 300).
Un grand merci d'avance pour votre aide!
Voici mon problème :
J'ai une cellule excel, pour laquelle j'aimerai vérifier si une partie du texte de celle-ci (logiquement une suite de caractères) est reprise dans une liste de mots.
Par exemple, le texte de ma cellule serait "Bonjour je suis", et j'aimerai savoir si elle correspond à l'une des expression de la liste suivante
- Aurevoir
- Merci
- Bonjour
- etc.
Pour info j'ai atteint un résultat en utilisant CHERCHE+EST.NUM+OU+IF mais la formule est beaucoup trop contraignante car elle implique de tapper dans le critère de CHERCHE tous les mots de la liste et cependant j'en ai beaucoup trop (environ 300).
Un grand merci d'avance pour votre aide!
A voir également:
- Correspondance texte d'une cellule et liste d'expressions
- Liste déroulante excel - Guide
- Excel cellule couleur si condition texte - Guide
- 38 dictionnaires et recueils de correspondance - Télécharger - Dictionnaires & Langues
- Liste déroulante en cascade - Guide
- Liste code ascii - Guide
1 réponse
Bonjour
une possibilité : un exemple avec 5 mots
https://www.cjoint.com/?0GFsiOzpIoP
ce ne sont pas les mots qui sont tapés dans CHERCHE mais CHERCHE qui s'adapte en fonction de chaque mot; si le mot est trouvé une croix est mise dans sa colonne ce qui permet de retrouver le mot avec INDEX EQUIV
A adapter à tes besoins
Cdlmt
une possibilité : un exemple avec 5 mots
https://www.cjoint.com/?0GFsiOzpIoP
ce ne sont pas les mots qui sont tapés dans CHERCHE mais CHERCHE qui s'adapte en fonction de chaque mot; si le mot est trouvé une croix est mise dans sa colonne ce qui permet de retrouver le mot avec INDEX EQUIV
A adapter à tes besoins
Cdlmt
Ta solution est correcte, mais je ne peux toutefois pas l'adapter à mon problème :
J'ai environ 50.000 cellules à tester et 300 mots...aussi cela donnerai une matrice avec 15.000.000 de formules à copier.
A la base je pensais pouvoir faire un bête INDEX+EQUIV, mais en ajoutant quelque chose pour préciser que la recherche doit se faire sur une partie de la cellule de réference.
Quoiqu'il en soit merci quand même pour ton aide!
La formule n'est pas à recopier mais juste à étirer (néanmoins sur 300 colonnes et 50 000 lignes si je te suis)
Une solution alternative consisterait à passer par un code en VBA avec 2 boucles imbriquées
du style
For n = 1 to 50 000
ici mettre un code pour récuperer successivement chacun des phrase en ligne n (style : phrase=cells(ligne n, colonne 1).value)
numero=0
For t=1 to 300
ici code pour tester si l'un des 300 mots est compris dans la phrase (avec l'équivalent de CHERCHE en VBA)
et si est compris attribuer à une variable numerola valeur t
Next t
IFnumero >0
faire afficher en regard de la phrase (colonne B, ligne n par ex) le mot retrouvé dans la liste grâce à son N°
Next n
Je t'aurais bien établi le code de manière plus complète mais je suis sous Libre office incompatible avec le VBA d'Open
En espérant qu tu arriveras à une solution
Cdlmnt