Créer des liens entre des listes, remplissage automatique

Fermé
ladybeetle Messages postés 5 Date d'inscription mardi 15 décembre 2015 Statut Membre Dernière intervention 31 mai 2016 - 15 déc. 2015 à 17:44
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 16 déc. 2015 à 09:44
Bonjour à tous,

Je suis actuellement en train de créer un "Calculateur de coût" sur Excel. J'ai besoin que lorsque je déroule ma liste produit, le tableau remplissent certaines données automatiquement.

J'ai une feuille description produit :



J'ai une autre feuille avec le calculateur :




J'ai besoin que le "prix initial global" (C11) + "prix surface initiale" (C12) s'affiche automatiquement en fonction de la référence choisie au-dessus.

La liste déroulante existante en C10 a été créée via "Data", "Validation", option "List".

Est-ce possible ? Merci par avance pour votre aide.
A voir également:

2 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 416
15 déc. 2015 à 18:06
Bonsoir
votre image ne dit pas où se trouve le prix surface initiale à placer en C12

Toutefois pour C1 s'il s'agit de ressortir la valeur de la colonne J par exemple à patri de la référence en colonne E::
=SIERREUR(RECHERCHEV(C10;Base!E:Z;6;0);"")

SIERREUR élimine les affichages d'erreur quand C10 est vide

RECHERCHEV va chercher la valeur indiquée en C10 dans le tableau de la feuille (supposée Base dans l'exemple) qui va de E à Z
6 est le N° de colonne de ce tableau (donc J) ou se trouve la valeur résultante

La valeur de C10 est obligatoirement cherchée dans la 1° colonne du champ, la colonne à ressortir est indiquée par son rang dans la plage
le 0 final est un code Excel qui impose une recherche exacte plutôt qu'une valeur proche qui a d'autres exigences.

crdlmnt

0
ladybeetle Messages postés 5 Date d'inscription mardi 15 décembre 2015 Statut Membre Dernière intervention 31 mai 2016 1
15 déc. 2015 à 22:01
Bonsoir Vaucluse, et merci infiniment pour ta réponse rapide. Je suis (malgré la clarté de tes explications) encore bloquée au même stade.

Pour être plus claire de mon côté, j'aimerais que le calculateur retranscrive les valeurs de cette façon :
- En C10 ; la référence produit indiquée en F2:F15
- En C11 ; le prix produit s'affiche automatiquement en fonction de la référence choisie en C10 (soit, si la réf. F10 "PAPER-A8" est sélectionnée, le prix I10 "20,00€" s'affiche en C11)
- En C12 ; le prix au cm2 s'affiche automatiquement en fonction de la référence choisie en C10 (soit, si la réf. F10 "PAPER-A8" est sélectionnée, le tarif/cm2 J10 s'affiche en C12)

A vrai dire, je ne sais même pas s'il est possible de faire cette manipulation sur Excel :)

Merci encore pour ton aide.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 416
16 déc. 2015 à 09:44
Bonjour
si nous sommes bien d'accord:
dans la base de données,
__la référence produit est en colonne F
__ le prix produit est en colonne I
__ le tarif/cm2 J10est en colonne J (??)

par contre je n'ai pas le nom de la feuille à inclure dans la formule pour faire référence à cette base de données. Appelons la base de données:

en C10 le, code cherché
en C11, la formule:

=SIERREUR(RECHERCHEV(C10;'Base de données'!F:J;4;0);"")
donnera la valeur correspondante de la colonne J
et
=SIERREUR(RECHERCHEV(C10;'Base de données'!F:J;5;0);"")
donnera la valeur de J

notez que le code SIERREUR (formule);"") sert à laisser la cellule "blanche" si la valeur n'est pas trouvée ou si C10 est vide. Ce code ne fonctionne qu'à partir d'Excel 2007
avant 2007 il faudrait écrire

=SI(OU(C10="";NB.SI('Base de données'!F:F;C10)=0);"";RECHERCHEV(C10;'Base de données'!F:J;4;0))


Si vous avez encore des problèmes et si c'est possible, déposez votre fichier sur :
https://www.cjoint.com/
créer le lien sur le site (bas de page)
copier le (haut de page)
et revenez le coller ici dans un prochain message

crdlmnt


0