[Excel] Si mot clé trouvé, alors ...

atoborn_14

XLDnaute Nouveau
Bonjour à toutes et à tous,

Je dois développer un panel fournisseurs pour mon entreprise et je bloque sur un point.

Dans mon tableau excel, j'ai une colonne fournisseurs, une colonne avec la description de ce qu'ils nous livrent, et une dernière colonne que j'ai crée qui doit suivre une formule.
Le but de la formule est de pouvoir sur sa propre ligne, selon le nom du fournisseur, et du mot clé sélectionné, indiquer une référence.

En gros le but serait de si( nom du fournisseur = fournisseur A", et que dans la description il y a le mot clé "silicone"), il me note "coulée sous vide".
J'ai trouvé une formule qui s'en rapproche : SI(TROUVE("silicone";N6729;1);"coulée sous vide";"")
Le but deja serait de pouvoir associé la recherche du mot clé sur la ligne d'une colonne, et le fournisseur sur une autre colonne sur sa ligne.

Même si je trouve la bonne formule, le truc est que nous avons plus de 500 fournisseurs, et que si j'utilise cette fonction si, il faudra mettre 500 si à la suite dans la même formule au minimum, sans compter le nombre de mots clés qu'il y aura.

Ma question, y'a-t-il une fonction ou autre methode qui permet de raccourcir la formule ?

J'avais pensé à garder mon tabelau dans l'onglet 1, et dans l'onglet 2 avoir une colonne fournisseur, une colonne métier (exemple:coulée sous vide), et une colonne mots clés.

Donc en gros ca donnerait :

Entreprise sous-service Mot clé

Fournisseur A Coulée sous vide PU
Fournisseur A Coulée sous vide Moulages
Fournisseur A Coulée sous vide ABS
Fournisseur A Coulée sous vide Silicone
Fournisseur A Stéreo Stéreo
Fournisseur A Stéreo Xtrem
Fournisseur A Stéreo Next
… … …

Y'a-t-il donc une formule qui permet de chercher la correspondance dans mon tableau avec le deuxieme onglet de facon automatique ? Qu'il cherche dans mon tableau le nom du fournisseur parmis toute une liste de fournisseur dans l'onglet 2, qui quand il trouve ce nom à un mot clé ou plusieurs associés, et que quand il fait la correspondance, il me met le nom du sous-service souhaité.
Bien entendu, selon les métier et fournisseurs, il peut y avoir plusieurs mots clés, d'ou qu'il fasse la recherche automatiquement dans le deuxième onglet.

J'espère m'être fait comprendre.

Merci !
 

atoborn_14

XLDnaute Nouveau
Ci-joint le fichier excel à titre d'exemple.

Le but final de ce fichier permettra que, selon les fournisseurs et métier, d'avoir un critère de délai par métier et fournisseur.
Dans le fichier je n'ai pas ajouté les date de délai, je me débrouillerais par la suite.

Ce qu'il me faut en revanche est donc de connaitre le métier selon les mots clés et fournisseurs, pour ensuite connaitre le nombre de commande par métier et fournisseur.
 

Pièces jointes

  • Bilan des achats test.xlsx
    8.9 KB · Affichages: 31

Dugenou

XLDnaute Barbatruc
Bonjour,
A condition que vous n'ayez pas deux mot clé identiques et avec un tableau fournisseur / mot clé / intitulé complet, une fonction cherche ou trouve ou substitue pourrait faire l'affaire : pouvez-vous joindre un fichier exemple de quelques lignes pour mettre en place une formule qui corresponde à vos besoin ? juste quelques données et un modèle de résultat attendu...

Cordialement
 

atoborn_14

XLDnaute Nouveau
Bonjour,

Vous trouverez ci-joint un fichier excel de test.

https://www.cjoint.com/c/HFCjptJZBnz

Alors, On a réussi à me donner une formule qui fonctionne quasiment comme je le veux ! (La formule se trouve dans le premier onglet du fichier excel ci-joint : INDEX(Feuil2!$B$1:$B$8;SOMME(ESTNUM(CHERCHE(SI(Feuil2!$C$3:$C$8<>"";Feuil2!$C$3:$C$8);C3))*LIGNE(Feuil2!$C$3:$C$8)))

Le dernier problème est que cela fonctionne bien lorsque j'ai un mot clé pour une description. Or, selon les description et la liste de mots clés instauré, je peux avoir plusieurs mots clés dans une seule description. Et j'ai l'impression que cela rentre en conflit.
Nous pouvons voir le conflit dans l'exemple du fournisseurs A, dont la description est "Duplication silicone x50". Je suis censé trouvé le métier "coulée sous vide" car mes mots clés associés à ce métier sont "duplication" et "silicone", mais il ne me donne pas le bon résultat.
A priori il rentre en conflit lorsqu'il y a plusieurs mots clés différents dans la description pour un même résultat. Comment puis-je instaurer un sorte de OU( pour les mots clés ?

Merci d'avance !
 

Jocelyn

XLDnaute Barbatruc
Bonjour le Forum,
Bonjour atoborn_14, Dugenou :),

pas sur d'avoir bien compris mais a esseyr en D3 de la feuille 1

Code:
=INDEX(Feuil2!$B$3:$B$8;EQUIV(VRAI;(ESTNUM(CHERCHE(Feuil2!$C$3:$C$8;Feuil1!C3)));0))

formule matricielle a étirer vers le bas

Cordialement
 

atoborn_14

XLDnaute Nouveau
Bonjour,

Merci Jocelyn, ca à l'air de fonctionner pour cette courte liste, à voir pour la vraie base de données si cela va marcher avec les 100ène de mots clés qu'il y aura.

C'est deja très bien que cela fonctionne comme cela. Je me demandais s'il était possible d'instaurer dans la formule en plus une recherche par fournisseur ? C'est à dire garder la même structure de recherche de mots clé, mais aussi selon les fournisseurs ? Fournisseur A, fournisseur B ...
Car pour un même métier donné, selon nos fournisseurs, nous n'avons pas les mêmes mots clés. Cela permettra de mieux filtrer et de mieux chercher le métier besoin selon les mots clés et fournisseurs !

Cordialement
 

atoborn_14

XLDnaute Nouveau
Merci Jocelyn c'est très bien ça !

Cependant, j'ai essayé dans mon tableau final, et j'ai remarqué que pour certaines de mes technologies, il y a un petit problème. C'est à dire que par exemple pour la technologie frittage de poudre, j'ai comme mot clé "PA" qui est un type de résine. Sauf qu'il ne filtre pas que le mot, mais aussi la contenance des autres mots. Pour une autre technologie j'ai comme description "xxxx part A", et il considère le mot clé "PA" dans "Part", et il me le met dans la mauvaise technologie.
Savez-vous comment faire une recherche par mot spécifique et non la contenance des mots ?

De plus, ce problème de mot clé "PA", intervient aussi pour un autre fournisseur, alors que la formule est censée filtrer par mot clé et par fournisseur.

Cordialement
 

Jocelyn

XLDnaute Barbatruc
Bonjour,

Pour limiter l'impact du "PA" on peut changer dans la formule le cherche() par TROUVE() ce qui fait que le PA ne sera prix que si il est écrit en Majuscule donc Part ne sera pas pris en compte.

comme je le dis dans le message précédent le filtre sur le fournisseur ne sera pas totalement au point vu la diversité et la complexité de tes donnée pour avoir quelque de plus précis il faut passer par le VBA et la je passe la main je suis une bille a ce jeu la. Un même mot clé pour un même fournisseur mais donnant des info différente ne peux pas être détecté le estnum cherche s'arrete sur le premier, l'autre solution était ta formule de début mais si tu a plus d'une ligne avec le même mot clé tu va avoir une addition donc un retour de ton index faussé

Cordialement
 

atoborn_14

XLDnaute Nouveau
Très bien merci.

Malheureusement je pense que je vais devoir passer par VBA. J'ai l'impression que la formule ne filtre pas entièrement par fournisseur. Si ça avait été le cas cela aurait été parfait. J'ai réussi à résoudre le problème du "PA" en mettant tout simplement un espace après le mot, du coup il ne prend plus en compte le "part", et je peux faire cette méthode pour d'autres mots clés je pense.
Si jamais quelqu'un à une autre formule, pour éviter de passer par VBA, qui prend en compte les mots clés de la description, et surtout par fournisseur, ce serait super sympa.

Cordialement
 

atoborn_14

XLDnaute Nouveau
Bonjour,

Je vous montre en exemple avec ce fichier test mon problème. En case G14, je suis censé trouver le métier "fraisage" car, pour le fournisseur D, j'ai comme mot clé "planche". Il ne trouve rien. Pourtant, pour la case G12, la formule trouve bien le métier "fraisage", car pour le fournisseur C, j'ai comme mot clé "planche". En inversant l'ordre des fournisseurs dans ma liste, il prend bien en compte le métier donné, mais pas pour l'autre fournisseur.
Quelqu'un aurait-il une explication ?
Nous pouvons le confirmer pour la case G5, dont le mot clé est le même pour le fournisseur A et B. Mais vu que le fournisseur B est devant le fournisseur A dans la liste des mots clés, cela ne fonctionne pas. Mais en mettant le fournisseur A devant le fournisseur B, cela fonctionne.

Cordialement
 

Pièces jointes

  • Bilan des achats test-2.xlsx
    11.4 KB · Affichages: 22

atoborn_14

XLDnaute Nouveau
Bonjour,

Franchement chapeau Jocelyn, ça à l'air de fonctionner niquel !
Entre temps j'étais parti sur une association equiv index, mais ça avait pas l'air de trop fonctionner. Il ne me trouvait pas le mot dans un texte malgré les jokers.
En tout cas merci pour l'aide !

Cordialement
 

Discussions similaires

  • Question
Microsoft 365 Macro VBA
Réponses
1
Affichages
264

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 196
Messages
2 086 101
Membres
103 116
dernier inscrit
kutobi87