Chercher dans une cellule la présence d'un mot clef
74jiji
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
Mike-31 Messages postés 18405 Date d'inscription Statut Contributeur Dernière intervention -
Mike-31 Messages postés 18405 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai une cellule contenant un descriptif, et j'ai une liste de référence avec des mots clefs appartenant à des catégories. J'aimerais associé le descriptif à une catégorie
Donc en gros j'aimerais savoir si au moins un des mots clefs d'une catégorie est présent dans le descriptif et si oui alors j'associe mon descriptif au titre de cette catégorie.
expl:
en A1 le titre « Fruit » en A2 : pomme en A3 :poire en A4 :orange
en B1 le titre « Légume » en B2 :carotte en B3 :courgette en B4 :haricot
en C1 le descriptif « jean mange une pomme" je voudrais mettre en D1 le résultat qui est ici Fruit
J'espère que c'est assez clair
Merci pour votre aide
J'ai une cellule contenant un descriptif, et j'ai une liste de référence avec des mots clefs appartenant à des catégories. J'aimerais associé le descriptif à une catégorie
Donc en gros j'aimerais savoir si au moins un des mots clefs d'une catégorie est présent dans le descriptif et si oui alors j'associe mon descriptif au titre de cette catégorie.
expl:
en A1 le titre « Fruit » en A2 : pomme en A3 :poire en A4 :orange
en B1 le titre « Légume » en B2 :carotte en B3 :courgette en B4 :haricot
en C1 le descriptif « jean mange une pomme" je voudrais mettre en D1 le résultat qui est ici Fruit
J'espère que c'est assez clair
Merci pour votre aide
A voir également:
- Chercher dans une cellule la présence d'un mot clef
- Aller à la ligne dans une cellule excel - Guide
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
3 réponses
Bonjour
Une possibilité (s'il 'y a pas beaucoup de critères)
=SI(NBCAR(SUBSTITUE(SUBSTITUE(SUBSTITUE(C1;A2;"");A3;"");A4;""))<NBCAR(C1);A1;"") & SI(NBCAR(SUBSTITUE(SUBSTITUE(SUBSTITUE(C1;B2;"");B3;"");B4;""))<NBCAR(C1);B1;"")
Sinon il faut passer par une macro en VBA
Cdlmnt
Une possibilité (s'il 'y a pas beaucoup de critères)
=SI(NBCAR(SUBSTITUE(SUBSTITUE(SUBSTITUE(C1;A2;"");A3;"");A4;""))<NBCAR(C1);A1;"") & SI(NBCAR(SUBSTITUE(SUBSTITUE(SUBSTITUE(C1;B2;"");B3;"");B4;""))<NBCAR(C1);B1;"")
Sinon il faut passer par une macro en VBA
Cdlmnt
Bonjour
essayez ceci, mais je ne garantis pas la bonne compréhension du problème
votre liste de référence de A1 à A50 (sans cellule vide)
votre liste de texte à traiter de B1 à B1000
de C1 à C1000, la formule à tirer:
=SI(SOMMEPROD((NB.SI(C1;"*"&$A$1:$A$50&"*"))*1)>0;"présent";"vide")
cette formule vous renvoie présent (ou fera autre chose selon besoins) si un des textes en A1:A50 est présent dans le texte en C
Attention aux signes!!
crdlmnt
Errare humanum est, perseverare diabolicum
essayez ceci, mais je ne garantis pas la bonne compréhension du problème
votre liste de référence de A1 à A50 (sans cellule vide)
votre liste de texte à traiter de B1 à B1000
de C1 à C1000, la formule à tirer:
=SI(SOMMEPROD((NB.SI(C1;"*"&$A$1:$A$50&"*"))*1)>0;"présent";"vide")
cette formule vous renvoie présent (ou fera autre chose selon besoins) si un des textes en A1:A50 est présent dans le texte en C
Attention aux signes!!
crdlmnt
Errare humanum est, perseverare diabolicum
Bonjour,
pourquoi ne pas mettre dans des colonnes qui pourraient être masquée 1 pour tester les fruits en F2 par exemple
=SI(A2="";"";NB.SI($C$1;"*"&A2&"*")) et incrémenter vers le bas
puis tester avec une conditionnelle si la colonne est supérieure = 1 résultat Fruit
idem pour les Légumes etc ...
ou on se limite à une colonne en espérant que dans la phrase il n'y ait pas un fruit et un légume avec cette formule imbriquée qu'il est possible d'allonger pour les fromages, les viandes etc ...
=SI(A2="";"";SI(NB.SI($C$1;"*"&A2&"*")>0;$A$1;SI(B2="";"";SI(NB.SI($C$1;"*"&B2&"*")>0;$B$1;""))))
ensuite il suffit de tester si le mot Fruit ou Légume est présent dans la colonne
https://www.cjoint.com/?DBBotCuvLKD
pourquoi ne pas mettre dans des colonnes qui pourraient être masquée 1 pour tester les fruits en F2 par exemple
=SI(A2="";"";NB.SI($C$1;"*"&A2&"*")) et incrémenter vers le bas
puis tester avec une conditionnelle si la colonne est supérieure = 1 résultat Fruit
idem pour les Légumes etc ...
ou on se limite à une colonne en espérant que dans la phrase il n'y ait pas un fruit et un légume avec cette formule imbriquée qu'il est possible d'allonger pour les fromages, les viandes etc ...
=SI(A2="";"";SI(NB.SI($C$1;"*"&A2&"*")>0;$A$1;SI(B2="";"";SI(NB.SI($C$1;"*"&B2&"*")>0;$B$1;""))))
ensuite il suffit de tester si le mot Fruit ou Légume est présent dans la colonne
https://www.cjoint.com/?DBBotCuvLKD
j'avais pensé aussi à un SI et un RechercheV mais trop lourd...
Je pensais que l'on aurait un type de fonction comme CHERCHE qui aurait pu être:
CHERCHE-dans-liste(Tableau_de_valeur;Lieu_de_recherche;Resultat;Parametres) avec
Tableau de valeur : une liste de mots clefs
Lieu de recherche : une cellule ou un tableau
Résultat : une valeur précise que l'on veut ou par défaut 1 si OK 0 si NOK
Paramètres: 0 pour « contient au moins une valeur » et 1 pour « contient toutes les valeurs »
Mais bon je crois que je vais devoir me la créer moi-même cette fonction
Merci en tout cas