Problème avec nb.si, recherche, trouve

Hello !

Je cherche un moyen de faire une recherche d'un mot dans une phrase en fonction d'une valeur rentrée dans une cellule par un utilisateur.

ATTENTION : il faut que se soit le mot juste peu importe sa place dans la phrase.

J'ai essayé diverses formules mais rien. Et comme je ne connais pas tout encore, je fais encore appel à vous.

J'aimerais qu'il m'affiche 1 ou 0 en fonction du mot entier recherché, Par exemple qu'il me mette 1 si le mot est "sous" et non pas 1 si je met "sou"

Je joint un fichier exemple avec mes 3 formules trouvées mais qui ne font pas ce que je désire.

Si vous avez des solutions sans macro en premier lieu (si c'est possible) je suis preneur ^^

Merci d'avance

25cherche-mot.xlsx (11.20 Ko)

Bonjour,

Une proposition

Bien à vous

Jp

25cherche-mot-v1.xlsx (11.43 Ko)

Merci bien ! Ca à l'air de fonctionner ^^

Je cherche à comprendre la formule.

NBcar renvoie le nombre de caractères contenus dans A2

GAUCHE/DROITE renvoie le premier caractère d’une chaîne de texte selon le nombre de caractères contenu dans B.

Je ne comprend pas le +1 et le non

Pourriez-vous m'éclairer ?

Je veux bien développer, mais là, ça devient payant !!!!

=SI(OU(GAUCHE(B2;NBCAR($A$2)+1)=$A$2&" ";DROITE(B2;NBCAR($A$2)+1)=" "&$A$2;NON(ESTERREUR(CHERCHE(" "&$A$2&" ";B2;1))));1;0)

La problématique :

Retrouvez un mot EXACT dans une phrase.

Le mot est exact, s'il n'y a, ni à droite, ni à gauche de lettre qui le touche.

3 hypothèses :

Le mot se trouve à gauche de la phrase

=GAUCHE(B2;NBCAR($A$2)+1=$A$2&" ")

Je récupère la partie gauche de la phrase sur x caractères

x correspondant à la longueur du mot recherché +1

+1, pour y ajouter un éventuel autre caractères qui n'en ferait pas le mot exact

Je test si ce que j'ai récupéré à gauche est exact au mot cherché auquel j'ajoute un espace

Le mot se trouve à droite de la phrase

=DROITE(B2;NBCAR($A$2)+1)=" "&$A$2)

Idem que Gauche, mais pour la droite et donc l'espace, je le mets avant le mot cherché

Le mot se trouve ailleurs dans la phrase

=CHERCHE(" "&$A$2&" ";B2;1)

Je cherche le mot dans la phrase avec un espace devant et un espace derrière, bien sur, je cherche à partir de la première position de la phrase.

ESTERREUR(CHERCHE(" "&$A$2&" ";B2;1))

Je récupère VRAI ou FAUX, si ma recherche est en erreur #VALEUR, en erreur si le mot n'existe pas.

Si c'est FAUX, c'est que le mot existe bien dans ma phrase

NON(ESTERREUR(CHERCHE(" "&$A$2&" ";B2;1)))

J'inverse donc la logique, ce qui était FAUX devient VRAI et ce qui était VRAI devient FAUX.

Pour finir j'analyse mes résultat, pour que le mot soit présent, je dois avoir VRAI, soit à Gauche, soit à Droite, soit Ailleurs, donc si OU retourne VRAI (Une seule condition suffit pour faire VRAI), j'affiche 1, sinon 0.

WOW ! merci de votre temps pour la réponse ^^

Par contre et si j'ai bien compris, celà s'applique si la formule est en face de l'"exemple de phrase".

Si je veux faire ma base de données sur un autre onglet et faire une page "recherche" sur un différent onglet avec juste la cellule recherche et le résultat, ça ne marchera plus ?

est-ce qu'il y a une solution ?

en sachant que je veux mettre un second SI (et ça, ça sera à moins de chercher comment l'imbriquer lol)


WOW ! merci de votre temps pour la réponse ^^

Par contre et si j'ai bien compris, celà s'applique si la formule est en face de l'"exemple de phrase".

Si je veux faire ma base de données sur un autre onglet et faire une page "recherche" sur un différent onglet avec juste la cellule recherche et le résultat, ça ne marchera plus ?

est-ce qu'il y a une solution ?

en sachant que je veux mettre un second SI (et ça, ça sera à moins de chercher comment l'imbriquer lol)

bonjour

une contribution plus digeste , a tester

23yakudark2.xlsx (10.93 Ko)

cordialement

Elle est pas digeste ma proposition ????

Merci Tulipe, c'est vrai que ta proposition est plus claire !!!!

Merci Tulipe !

Même soucis que votre prédécesseur ! faut-il que je rajoute INDEX et PETITE.VALEUR ?

S'il y a 2 onglets (une BDD et un moteur de recherche/résultat), ça ne marche plus n'est ce pas ?

Ce qui serait bien, c'est de donner le projet dès le début, plutôt que je rajouter petit à petit des éléments.

Je vous fait ça en rentrant du travail mais en gros, la résultante doit être sur une seule case.

Pour reprendre Tulipe, en G1 seulement il doit y avoir "1" ou "0" si le mot recherché est dans la base de données (exemple de phrase)

re

pour recuperer sur une autre feuille avec index

1) tu prends l'une ou l'autre formule (avec la mienne se sera plus facile ) tu remplace le *1 par *LIGNE(a1)

ça va te faire une colonne avec des N° de ligne au lieu de 0ou1

2) dans la feuille de destination

=si(ligne(a1)>NB.SI( la col desn°;">0");""; index( la colonne des textes; petite.valeur(la colonnedesN°;ligne(a1))) a tirer

ainsi les textes vont s'afficher

3) si tu veux savoir combien il y en a NB.SI( la col desn°;">0")

cordialement

Je ne suis toujours pas parti du boulot....

J'ai fait un print de mes fichiers en attendant.

En 1, l'utilisateur rentre son mot de recherche

En 2, c'est ma base de données annexes d'un autre fichiers dans lequel a lieu la recherche

En 3, m'affiche un 1 si le mot recherché est dans la base de données.

NB : chaque nom d'ambiance correspond un onglet de ma BDD

En attendant de faire mieux en rentrant.

Est-ce que ma question de départ correspond à ce que je cherchais avec cette explication ? car avec votre professionnalisme, vous avez une autre vision et du coup, nous remet en question quand à notre demande qui parfois est vague....

Mais dans tous les cas, ce que vous m'avez déjà apporté va me servir pour un autre projet beaucoup plus light.

sans titre

re

et qu'est ce qui ledare a L3 ????

nb) pas de capture d'ecran ( seuls les mediums ,travaillent sur photos)

a+

Je met un seul fichier excel, l'onglet BDD est un autre fichier excel à la base mais pour plus de faciliter je l'ai mis dans le même fichier.

L'onglet recherche :

En A3, on met le nom du produit (ledare est une ampoule chez ikea)

Il va chercher si ledare apparait dans la base de données "BDD" colonne B (dans notre cas il est ligne 19 et ligne 25 aussi)

Si oui, il va me mettre en 1 dans l'onglet recherche en C9 par exemple. (car la recherche se fait dans une base de données appelé SE1)

et ainsi de suite pour chaque ambiance (se2, se3, se4, l1.....) à chaque fois il va faire une recherche dans la base de données équivalente et me mettre un 1 ou un 0 là ou il faut.

4recherche.xlsm (20.98 Ko)

re

alors là?????

pas de ledare dans ta bdd

c'est rien , je l'ai bidouillée ;je le trouve ..... ;et après ??????? 1 parce ledare commence par un L

et la bd SE1 ... quézako???

chaque nom d'ambiance se1 l1 b1..... sont différentes base de données ! et c'est vrai que ledare n'y est pas loool ! prenez dragon à la place lol

non parce que ledare=ledare car on a des produit qui s'appelle "leda" donc faut pas confondre quand on tape la recherche

Rechercher des sujets similaires à "probleme recherche trouve"