Liste déroulante de noms mais sélectionnant des valeurs

Résolu/Fermé
goodwin - 5 avril 2013 à 18:17
 goodwin - 7 avril 2013 à 09:45
Bonjour,

Je souhaiterais obtenir une liste déroulante de noms qui attribuerait une valeur pour le nom sélectionné.

Pour faire simple, je veux que ma liste déroulante contienne des nom (ex: outil) et qu'une fois sélectionné cela affiche une valeur associée au lieu d'afficher le mot "outil".

-> La liste fait apparait le mot "outil"
-> en sélectionnant "outil" la case affiche 25896.

J'espère que je suis assez clair, merci d'avance.

5 réponses

Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
5 avril 2013 à 23:03
Salut,

Je n'ai pas regardé de code, mais je pense qu'en VBA on doit pouvoir le faire sans problème, le risque est que lorsque tu clic sur un mot, par erreur tu clic sur le mot du dessous et tu obtiens un affichage erroné.
je te proposerais deux solutions par formule, tu as certainement une base de données avec les mots et la somme ou la valeur sur la colonne à coté.
je conserverais la liste déroulante avec les mots et dans une autre cellule j'utiliserai une RECHERCHEV

Deuxième solution, dans la liste déroulante je ferai apparaitre l'affichage des deux colonnes, le mot et la valeur
reste plus qu'cliquer sur la valeur.

en ajoutant un peu de VBA il est possible d'imposer à Excel d'afficher que la valeur mais bon c'est se compliquer pour pas grand chose
0
Raymond PENTIER Messages postés 58389 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 18 avril 2024 17 090
6 avril 2013 à 03:44
0
Merci de vos réponses,

Effectivement faire du VBA pour ca c'est se compliquer la tache, surtout que ce qui m'intéresse c'est de ne pas afficher le nom sur mon bon de commande mais que la référence associée.
Je vais simplifier la chose en choisissant ta solution 1 et en mettant la liste déroulante hors zone d'impression.

Pour finir, comme je n'aime pas appliquer bêtement sans comprendre, pouvez-vous m'expliquer la formule suivante :

=SI($B:$B="";"";RECHERCHEV($B:$B;MaBase;2;0))
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
6 avril 2013 à 10:00
Bonjour
la formule:
_ prend en compte la valeur de B sur la ligne où se trouve la formule
_ cherche sur quelle ligne se trouve cette valeur dans la 1° colonne du champ Mabase
_ renvoie la valeur de la deuxième colonne du champ Mabase sur la ligne trouvée
_ le 0 final est un code Excel qui impose à la formule de ne trouver que la valeur exacte.

Sans ce code, il faut que les données de Mabase soit classées par ordre croissant dans la 1° colonne, (alpha ou num) et la formule renvoie alors la valeur inférieure la plus proche (mais ne renvoie que des sottises si la colonne 1 n'est pas classée.

crdlmnt
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Un grand merci à vous.
0