Un petit problème sous Excel m'amène à vous demander votre aide.
Je dispose d'un fichier recensant des recettes ainsi que leur ingrédients et quantités correspondantes.
Je cherche, à partir d'un autre onglet et grâce à une liste déroulante, à pouvoir sélectionner une recette et que viennent ensuite s'ajouter automatiquement les ingrédients nécessaires.
Exemple à partir du fichier :
En sélectionnant dans l'onglet 2 (A2) la recette tarte au melon, je souhaite que les ingrédients sucre bio ect... viennent s'inscrire dans la colonne B, idem pour les quantités en colonnes C.
Re : Méthode pour relier liste déroulante à base de données
Bonjour jojolabricot et bienvenue à toi,
Une proposition en pièce jointe, dont l'avantage est de ne pas être trop difficile à comprendre:
- en colonne E de la Feuil1, une formule affiche le n° de la ligne courante, si en colonne A (pour la même ligne) le produit est identique à celui sélectionné dans ta liste.
- en colonne B de la Feuil2, une autre formule, qu'on recopie ensuite vers le bas et la droite et qui complète tes 3 colonnes
... à tester ...
Edit: mes confraternelles, amicales et néanmoins respectueuses salutations à Dugenou
Re : Méthode pour relier liste déroulante à base de données
Bonjour Modeste,
Merci beaucoup c'est exactement ce que je cherchais et ça marche impeccablement bien.
Par contre, je peine quelque peu a comprendre le fonctionnement de la formule de l'onglet 2....
Y'aurait-il possibilité d'avoir un rapide explicatif afin que je puisse la retranscrire sur mon véritable fichier ?
Re : Méthode pour relier liste déroulante à base de données
Re-bonjour,
La première partie de la formule
Code:
SI(LIGNES($1:1)>NB(Feuil1!$E:$E);"";[...])
permet simplement de ne pas afficher de messages d'erreur (#NOMBRE!), lorsqu'on recopie la formule sur plus de lignes qu'il n'y a d'ingrédients renseignés pour la recette choisie.
PETITE.VALEUR permettra de trouver, en colonne E de la Feuil1, le plus petit n° de ligne renseigné, puis le plus petit au rang 2, puis le plus petit au rang 3, etc. Pour ne pas taper soi-même les rangs (1, puis 2, puis 3 et ainsi de suite), on utilise LIGNES($1:1) qui, recopiée vers le bas, donnera ces mêmes résultats.
Pas le temps de faire plus long, ni plus détaillé, mais n'hésite pas à faire des tests, pour comprendre des bouts de la formule, plutôt qu'avaler la couleuvre en une seule fois
N'hésite pas non plus à revenir nous dire si quelque chose n'est pas encore très clair !