Calculs automatique à partir d'une liste déroulante
Résolu
CindySD
Messages postés
4
Statut
Membre
-
Vaucluse Messages postés 27336 Statut Contributeur -
Vaucluse Messages postés 27336 Statut Contributeur -
Bonjour à toutes et tous,
Je m'appelle Cindy, je suis diététicienne et je souhaite créer un tableau de calcul automatique des rations caloriques pour mes patients. Pour cela j'ai une liste exhaustive des aliments courants et leurs valeurs nutritionnelles (pour 100 g d'aliment) pour chaque nutriment.
Je souhaite pouvoir choisir dans une liste un aliment (par exemple le pain qui contient 50 g de glucides pour 100 g), ajouter manuellement la quantité dans la colonne suivante (par exemple 200 g) et obtenir les quantités de chaque nutriment pour la quantité d'aliment choisie (dans l'exemple je devrais trouver 100 g dans la colonne glucide).
J'espère être compréhensible.
J'ai regardé beaucoup de tutos et exploré les forums sur les listes déroulantes, en vain. Peut-être pourriez-vous m'aider ?
Belle journée !
Je m'appelle Cindy, je suis diététicienne et je souhaite créer un tableau de calcul automatique des rations caloriques pour mes patients. Pour cela j'ai une liste exhaustive des aliments courants et leurs valeurs nutritionnelles (pour 100 g d'aliment) pour chaque nutriment.
Je souhaite pouvoir choisir dans une liste un aliment (par exemple le pain qui contient 50 g de glucides pour 100 g), ajouter manuellement la quantité dans la colonne suivante (par exemple 200 g) et obtenir les quantités de chaque nutriment pour la quantité d'aliment choisie (dans l'exemple je devrais trouver 100 g dans la colonne glucide).
J'espère être compréhensible.
J'ai regardé beaucoup de tutos et exploré les forums sur les listes déroulantes, en vain. Peut-être pourriez-vous m'aider ?
Belle journée !
A voir également:
- Calculs automatique à partir d'une liste déroulante
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Réponse automatique thunderbird - Guide
- Creer un groupe whatsapp a partir d'un autre groupe - Guide
- Logiciel de sauvegarde automatique gratuit - Guide
7 réponses
Bonjour
voyez ici si vous pouvez en tirer quelque chose et revenez si problème
https://mon-partage.fr/f/wst5f8Ib/
à noter qu'il est possible de réduire la formule si dans la base de données, vous pouvez indiquer la quantité à partir de l'unité de quantité que vous utilisez dans l'édition
exemple: quantité pour un gramme en O quand l'édition utilise le gramme pour unité
la formule en C devient alors
=SIERREUR($B3*RECHERCHEV($A3;$M$3:$R$14;3;0);"")
crdlmnt
voyez ici si vous pouvez en tirer quelque chose et revenez si problème
https://mon-partage.fr/f/wst5f8Ib/
à noter qu'il est possible de réduire la formule si dans la base de données, vous pouvez indiquer la quantité à partir de l'unité de quantité que vous utilisez dans l'édition
exemple: quantité pour un gramme en O quand l'édition utilise le gramme pour unité
la formule en C devient alors
=SIERREUR($B3*RECHERCHEV($A3;$M$3:$R$14;3;0);"")
crdlmnt
Bonjour,
Merci beaucoup pour cette réponse rapide !
J'ai tenté d'entrer la formule, mais je n'obtiens aucun résultat. J'ai certainement fait une erreur. Je vous joins mon document, peut-être y trouverez-vous davantage de réponses.
Aussi je vais chercher à faire une liste déroulante semi-automatique ... Passionnant ce fameux Excel !
https://mon-partage.fr/f/C2NDs2Ol/
Merci beaucoup pour cette réponse rapide !
J'ai tenté d'entrer la formule, mais je n'obtiens aucun résultat. J'ai certainement fait une erreur. Je vous joins mon document, peut-être y trouverez-vous davantage de réponses.
Aussi je vais chercher à faire une liste déroulante semi-automatique ... Passionnant ce fameux Excel !
https://mon-partage.fr/f/C2NDs2Ol/
Re
d'une part, votre base de données à partir de BQ, ne comporte pas de colonne indiquant la quantité de base pour les valeurs affichées, mais à priori ces quantités sont données pour 100gr d'après les titres.
d'autre part il faut que la plage de recherche comporte , dans la 1°colonne la colonne de la base qui contient les noms et d'autre part (BQ donc)la plage complète toutes les colonnes à renvoyer, la fin de la formule donnant le range de la colonne dans la plage
En supposant que le tableau de D à BF comporte les mêmes rubriques que de BD à DT aux mêmes endroit
donc si on part en D3 , écrire la formule pour la tirer sur tout le tableau:
=SIERREUR(RECHERCHEV($B3;$BQ$3:$DT$2809;COLONNE(B$1);0)*C3/100;"")
ou plus simplement les limites en lignes n'étant pas utile:
=SIERREUR(RECHERCHEV($B3;$BQ:$DT;COLONNE(B$1);0)*C3/100;"")
COLONNE(B$1) renvoi 2 pour la 2° colonne de la plage à ressortir en D3 et va changer en C$1, donc 3 D$1 donc 4 etc....en tirant vers la droite
pour l'avenir base de la formule:
=RECHERCHEV(valeur cherchée; plage complète; rang de la colonne à ressortir;0)
valeur cherchée: au clavier ou cellule qui la contient
plage: la plage qui contient dans la 1° colonne la valeur cherchée, et qui inclut toutes les colonnes à traiter
rang de la colonne: rang de la colonne dans la plage à ressortir
0 code Excel précisant que la valeur trouvée en 1° colonne doit être exacte et ne pas utiliser d'approximation
(sans ce code , la formule utilise la ligne de la valeur inférieure la plus proche dans un champ classé en ordre croissant)
crdlmnt
d'une part, votre base de données à partir de BQ, ne comporte pas de colonne indiquant la quantité de base pour les valeurs affichées, mais à priori ces quantités sont données pour 100gr d'après les titres.
d'autre part il faut que la plage de recherche comporte , dans la 1°colonne la colonne de la base qui contient les noms et d'autre part (BQ donc)la plage complète toutes les colonnes à renvoyer, la fin de la formule donnant le range de la colonne dans la plage
En supposant que le tableau de D à BF comporte les mêmes rubriques que de BD à DT aux mêmes endroit
donc si on part en D3 , écrire la formule pour la tirer sur tout le tableau:
=SIERREUR(RECHERCHEV($B3;$BQ$3:$DT$2809;COLONNE(B$1);0)*C3/100;"")
ou plus simplement les limites en lignes n'étant pas utile:
=SIERREUR(RECHERCHEV($B3;$BQ:$DT;COLONNE(B$1);0)*C3/100;"")
COLONNE(B$1) renvoi 2 pour la 2° colonne de la plage à ressortir en D3 et va changer en C$1, donc 3 D$1 donc 4 etc....en tirant vers la droite
pour l'avenir base de la formule:
=RECHERCHEV(valeur cherchée; plage complète; rang de la colonne à ressortir;0)
valeur cherchée: au clavier ou cellule qui la contient
plage: la plage qui contient dans la 1° colonne la valeur cherchée, et qui inclut toutes les colonnes à traiter
rang de la colonne: rang de la colonne dans la plage à ressortir
0 code Excel précisant que la valeur trouvée en 1° colonne doit être exacte et ne pas utiliser d'approximation
(sans ce code , la formule utilise la ligne de la valeur inférieure la plus proche dans un champ classé en ordre croissant)
crdlmnt
Merci, j'ai pris en note la formule. Elle est simple à lire, plus complexe à mettre en place !
J'ai entré la formule telle que vous me l'avez proposé. Je vous remercie pour cet énorme gain de temps.
Lorsque j'étire la formule, les résultats ne sont pas juste. Je vous joins à nouveau mon document avec la formule étirée.
https://mon-partage.fr/f/NdGECrt6/
J'ai entré la formule telle que vous me l'avez proposé. Je vous remercie pour cet énorme gain de temps.
Lorsque j'étire la formule, les résultats ne sont pas juste. Je vous joins à nouveau mon document avec la formule étirée.
https://mon-partage.fr/f/NdGECrt6/
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
normal, juste une petit coquille dans ma proposition (c'est ma spécialité)
il faut bloquer le C de C3 à la fin de la formule:
=SIERREUR(RECHERCHEV($B3;$BQ:$DT;COLONNE(B$1);0)*$C3/100;"")
sinon il devient D3 etc...
excuses
crdlmnt
il faut bloquer le C de C3 à la fin de la formule:
=SIERREUR(RECHERCHEV($B3;$BQ:$DT;COLONNE(B$1);0)*$C3/100;"")
sinon il devient D3 etc...
excuses
crdlmnt