Afficher plusieurs résultats pour une recherche dans une cellule

Bonjour à Tous !

Je souhaite remplacer mon outil crée via une macro excel par un outil similaire sur Google Sheets. Mais il semblerait que je tombe face à une énigme.. et j'ai besoin de votre aide et/ou de vos conseils...

J'ai une base de donnée qui répertorie mes références produits, et qui me donne l'équivalence de mes références chez d'autres constructeurs (concurrents). Donc pour une seule référence, j'ai plusieurs correspondances concurrentes.

Pour faire simple, j'aimerai pouvoir renseigner dans une cellule ma référence, et que google sheets me sorte toutes les équivalences connues dans ma base de donnée.

J'ai essayé d'attaquer le sujet sous plusieurs forme, avec l'aide de formule VLOOKUP mais malheureusement celle-ci ne me sort qu'un seul résultat, et non pas toutes les équivalences. Et n'étant pas très compétant dans ce domaine...je ne sais pas traduire ma macro en Javascript pour que Google puisse la comprendre.

Après je cherche surtout à trouver une solution, sans forcément passer par une macro, pour que sheets aille chercher dans mon tableau plusieurs lignes de résultats après la requête d'une référence..

Par exemple, je tape ma référence dans une cellule, et là je vois apparaître toutes mes correspondances qui contiennent cette 1ère référence

Si vous avez des idées, j'en serai vraiment ravi,

Merci de votre bienveillance,

Bonjour,

Un simple filtre devrait suffire. Tu as un champ de recherche normalement dans chaque en-tête de colonne sur lesquels tu as placé ledit filtre.

Bonjour Pedro,

Merci pour ta réponse,

Oui un simple filtre suffirait, mais dans l'idée j'aimerai en faire un outil nomade et ergonomique sur Sheets où les utilisateurs peuvent depuis un mobile taper la référence, et voir les correspondances s'afficher. Sans avoir une vue directe sur la base de donnée.

Le coup d'utiliser le filtre fonctionne, mais si je peux simplifier et éviter aux utilisateurs d'aller utiliser les filtres... je prends

La solution comme j'avais sur excel doit bien se trouver sur sheets....

Salut !

C'est mon petit kiff de faire ce genre de module de recherche, je pense pouvoir t'aider.

Le plus simple d'après moi (et mon niveau intermédiaire) c'est d'utiliser l'incroyable fonction =QUERY.

Pour mettre en pratique la formule un petit exemple :

  • Crée un onglet avec ta base de données (ce dernier servira de référence à ton module de recherche.).
    Puis crée un nouvel onglet dans lequel se placera ton module de recherche ainsi que les résultats obtenus (qui apparaîtrons juste en-dessous.).
  • Dans ton onglet de recherche, réserve toi un petit espace pour la saisie de ta référence (de préférence et pour l'exemple en A2).
    Rentres-y ensuite une partie de ta référence.
  • Maintenant, dirige toi dans une autre cellule pour y rentrer la formule (pour l'exemple, place-toi en A4).
    La formule va se construire de cette manière :
    =QUERY(données; requête; [en_têtes])"
  • Pour appliquer cette dernière en un module de recherche il te faut remplir les champs de cette façon :
    =QUERY(séléctionne ta base de donnée;"SELECT * WHERE LOWER(A) CONTAINS '"&LOWER(A2)&"' ORDER BY (A) ASC";1)

La fonction QUERY est propre à GoogleSheet, et franchement elle est très vaste et bien compliquée à aborder quand t'y a jamais trop touché. Pour traduire la formule ci-dessus, tu peux la lire de cette manière :

=QUERY(Recherche dans l'intégralité de cette base de donnée mon résultat puis...;"Sélectionne TOUT MON TABLEAU (*) dans lequel la colonne (A) contient un fragment de mon texte en (A2) (insensible à la case grâce à LOWER() ou MINUSCULE()) puis trie moi les résultats obtenus de manière ascendante en fonction des résultats de la colonne (A)";...enfin, affiche-moi les en-têtes)

Bref ! Comme tu peux le constater c'est un peu compliqué...

Normalement après l'avoir appliqué à ta manière, ton module de recherche se mettra automatiquement à jour en fonction du résultats que tu saisira. Si tu veux seulement afficher les 3 premières colonnes , au lieu d'écrire "SELECT * WHERE ..." écrit "SELECT A, B, C WHERE ..." ainsi, ton module de recherche n'affichera que les résultats des colonnes A,B,C. Voilà ! J'espère avoir pu t'aider.

Hello Orakur !

J'avais mis ce sujet de côté car je ne trouvais plus de solutions adaptées... ET LA tu me proposes un truc qui sonne vraiment VRAIMENT super bien !!!

Je vais l'appliquer direct, je te tiens au courant !!

Merci, vraiment merci de tes explications et du temps que tu y as consacré ! C'est génial !

Merci !!

Avec grand plaisir, DCJIVAGO !

Tiens moi au courant, si besoin je t'aiderai à mettre ça en place.

Bonjour à tous,

Pour les autres qui auraient un jour la même problématique, sachez que la méthode d'Orakur précédemment citée était la bonne !

En tapant une référence dans une cellule, ça automatise un tableau qui affiche plusieurs résultats/colonnes avec les attributs de cette référence.

Encore merci à lui

Rechercher des sujets similaires à "afficher resultats recherche"