Liste deroulante

bonjour,

A partir d'une matrice présentée comme dans le fichier joint je cherche :

1 - créer une liste déroulante contenant tous les noms de la matrices

2- Si un nom est sélectionné, je voudrais que s'affiche son titre de colonne dans une case adjacente.

Est ce possible de faire cela sans VBA et sans modifier la disposition de la matrice ?

Merci de votre aide

Bonjour maeljourdain,

Tu as sans doute essayé, sinon tu n'aurais pas posté. Ce qu'Excel t'a répondu, dans ce cas, c'est que la liste de valeurs doit être contenue dans une seule et même colonne.

Du coup, sans VBA, à mon avis, c'est râpé... Daniel

ca fonctionne et sans VBA !

pas de code mais un peu de bidouillage

j'ai remis ton tableau sous une autre forme dans la feuil2 pour pouvoir faire ce que tu voulais.

si tu as des questions ou que tu veux des explications n'hésite pas

Simon

bonsoir

en effet Daniel on peut faire sans vba :

une contibution (sans explication s ,mais elle peuvent suivre )

16maeljourdain.xlsx (11.25 Ko)

cordialement

ah ouais, d'accord 8)

bon, gagné !

Salut à tous !

Bel effort, mais je préconiserais plus simple puisqu'en tout état de cause on n'échappe pas à l'établissement d'une liste !

Une formule pour établir la liste :

=DECALER($A$1;ENT((LIGNE(1:1)-1)/3);MOD(LIGNE(1:1)-1;3))

On la met où on veut, on la tire sur 11 lignes, et on a la liste. (Je l'ai mise en E1:E11 pour faciliter et nommée liste)

[NB : Inversé 2 groupes pour ne pas avoir une cellule vide au milieu et ne pas compliquer inutilement les formules).

La liste déroulante étant alimentée, une autre formule pour l'affichage des têtes de listes :

=SI(F1<>"";INDIRECT(ADRESSE(1;SOMMEPROD((A1:C4=F1)*COLONNE(A1:C4))));"")

Cordialement

Ferrand

bonjour mferrand

la formule DECALER creant des trous( because des cel vides )>>>>> pour faire proprement une liste: accompagner d'une autre pour les "boucher "

voir ma pj ensuite c'est du classique pour recuperer l'entete ;

cordialement

ah oui j'ajoute ,pourquoi /3 >>>parce que il y a 3 colonnes

Hello !

L'arrangement de départ étant choisi par l'intéressé, il peut le faire "sans trous".

La question est : une seule formule pour constituer la liste (et une pour la recherche de l'en-tête).

Je retiens donc ta problématique "avec trous" si je n'ai pas sommeil prématurément après manger.

Ciao !

salut m ferrand

etant donné que tu resides sous le tropiques ; je presume qu'un repas leger( a base de" mets locaux": en creole = mélocco ) compensera allegrement la lourdeur de mes formules

cordialement

Les repas locaux ne sont pas forcément légers ! Mais non, pas de repas local ce soir, j'ai mangé léger, ferai mon carri une autre fois. Mais j'ai conservé le punch (quoique en soit c'est plutôt antillais, mais le rhum est local).

Bref, voilà pour le traitement "avec trous" :

=SIERREUR(INDEX($A$1:$C$4;ENT(PETITE.VALEUR(LIGNE($A$1:$C$4)*SI($A$1:$C$4<>"";10;1000)+COLONNE($A$1:$C$4);LIGNE(1:1))/10);MOD(PETITE.VALEUR(LIGNE($A$1:$C$4)*SI($A$1:$C$4<>"";10;1000)+COLONNE($A$1:$C$4);LIGNE(1:1));10));"")

Cette fois la formule est matricielle. Mais comme précédemment on la met où on veut et on tire pour générer la liste de 12 noms. Les "trous" génèrent une erreur et sont remplacés par "". Les "" sont rejetés en fin de liste. Si on remplace le "trou" par un nom, celui-ci prendra sa place dans la liste (le listage est fait par ligne, donc en mélangeant les catégories).

La 2e formule ne change pas.

Cordialement

Ferrand

Rechercher des sujets similaires à "liste deroulante"