Renvoi d'une donnée provenant d'une liste déroulante

Bonjour à tous,

Et d'avance merci pour votre aide.

Je suis en train de bloquer sur les formules.

J'ai 3 feuilles de calcul :

- Articles : qui définit les différents articles personnalisé existants

- Prix : qui reprend les prix de chaque article en fonction de la quantité qu'on commande

-Commande : Qui est une feuille sur laquelle on choisit l'article qu'on veut commander et la quantité. J'aimerai que le prix en fonction de la quantité commandée et des informations à propos des articles se place automatiquement quand je choisi l'article.

Si j'utilise la fonction =SOMME.SI(Articles!$B:$B;B4;Articles!$D:$D) Ca ne fonctionne pas parce que je suppose que la donnée que je veux "rapatrier" fait partie d'une liste déroulante.

J'ai essayé aussi =RECHERCHEV(B4;Articles!B:B;Articles!D:D;FAUX) mais sans plus de succès…

Je dois probablement mal m'y prendre.. :-/

J'aurai probablement du mal à aller rechercher le prix en fonction de la quantité commandée mais c'est un autre problème.. :-p

Merci d'avance

7test-commande.xlsx (22.72 Ko)

Bonjour Juls280287 le forum
ton fichier en retour à tester, mais pour le prix c'est quoi un prix par carton?? par palette ?? par kilo??
a+

Papou

edit: Bonjour Jean Eric

Bonjour,

Tout cela est bien confus.

Des pistes de réponse avec les données sous forme de tableaux structurés et les fonction habituelles Index() et Equiv()..

Cdlt.

8test-commande.xlsx (41.50 Ko)

Bonjour,

sans aller aussi loin que Index() et Equiv() qui sont bien plus performants que rechercheV ni vouloir prendre la place des spécialistes (Bonjour Jean-Eric et paritec), j'aimerais proposer la version avec rechercheV qui semble mieux maîtrisée par Juls280287.

Dans l'onglet "commande" dans la colonne "Produit" j'indique : =RECHERCHEV(B4;Articles!$B:$C;2;FAUX)

Dans l'onglet "commande" dans la colonne "Cartons à utiliser" j'indique : =RECHERCHEV(B4;Articles!$B:$D;3;FAUX)

Juls280287, pour une formule rechercheV, le 3iem argument est normalement un numéro de colonne, je ne comprend pas pourquoi tu indiques =RECHERCHEV(B4;Articles!B:B;Articles!D:D;FAUX)

pour la colonne "Nombre de cartons", si c'est le nombre de colis/palette * Nombre de palettes, cela devrait donner ceci : =RECHERCHEV(F4;'Prix 2020'!A:E;5;FAUX)*C4

ensuite, pour le prix/cartons, ....il faudrait conjuguer une recherche de prix avec le nombre de cartons divisé par des entier de 33; 10; .....(les prix par nombre de colis).
mais je n'ai pas encore regardé cela.

Bonjour à tous et merci pour vos nombreuses réponses.

Effectivement, c'était un peu confus…

@ Paritec : Tout fonctionne très bien mais je ne vois aucune formule apparaitre du coup, je me demande comment tu as fait parce que le but est évidemment d'apprendre à le faire seul. :-P Est ce un problème qui vient de chez moi ?

@ Jean-Eric : C'est aussi exactement le résultat que je cherchais, mais ça semble plus complexe à mettre en œuvre que la formule RECHERCHEV. Je garde quand même bien précieusement ton fichier pour pouvoir évoluer dans excell, je risque de venir t'embêter encore un peu.. :p

@ Nighty : Je ne sais pas pourquoi je m'obstinais à mettre Articles!D:D au lieu d'un numéro de colonne (enfin si, je mettais Articles!3 donc le nom de la feuille de calcul et le numéro de colonne et ça m'indiquait une erreur évidemment car ca ne servait à rien de mettre le nom de la feuille… Novice que je suis)

@ Jean-Eric et Nighty, Au niveau de la recherche de prix, j'ai la feuille de calcul Tarif 2020 et puis j'ai les colonnes 1, 5, 10, 33 qui fait référence au nombre de palettes commandées. Donc en fonction de l'article que je choisis, il faut retrouver la bonne ligne et choisir en fonction du nombre de palette commandée.

Jean-Eric l'a bien repris dans son fichier mais un problème qui survient est que si je commande 3 palettes, il n'y a aucun prix pour 3 palettes dans mon tableau.

En gros les prix dans le tarif sont pour 1à4 palettes, 5à9 palettes, 10à32 palettes et 33 palettes.

Voilà ma solution pour aller rechercher les bons prix :

=SI(D4<1;"";SI(D4<5;RECHERCHEV(C4;'Prix 2020'!$B:$I;8;FAUX);SI(D4<10;RECHERCHEV(C4;'Prix 2020'!$B:$I;8;FAUX);SI(D4<25;RECHERCHEV(C4;'Prix 2020'!$B:$J;9;FAUX);SI(D4>=25;RECHERCHEV(C4;'Prix 2020'!$B:$K;10;FAUX))))))

N'hésitez pas à me dire si il y avait une manière plus facile ou autre pour y arriver

Bonjour Juls280287 le forum
bah oui tu peux apprendre, tu vas dans alt+F11, dans la feuille Commande et là tu as la macro qui gère le tout
sur un changement de tes listes de sélection ou de tes quantités de palettes cela se met à jour dans ta feuille commande sans trainer une collection de formules
a+
Papou

Ah oui, je peux voir que c'est un niveau expert +++

J'en suis pas encore là dutout même si je préfèrerais..

Je pense que je vais rester avec mes formules à rallonge et dès que j'aurai plus de temps, je plancherai sur la question mais je pense qu'une petite formation sera nécessaire…

Encore un tout grand merci pour votre aide…

Juls

Rechercher des sujets similaires à "renvoi donnee provenant liste deroulante"