Liste Déroulante

Bonjour,

j'aimerai que ma liste déroulante s'agrandisse en fonction de ma colonne tableau, mais je sais pas comment faire...

Merci d'avance de m'aider

21classeur1.xlsx (15.60 Ko)

bonjours; pardon mais moi je ne suis pas un expert sauf que je dois te dire:

1. ton poste se trouve dans la section VBA alors qu'il n'y a pas de code dedans

2. précise plus la nature de ton problème car moi j'ai ajouté une ligne au milieu de ton tableau et dans la cellule correspondante j'ai écrit un mot que j'ai retrouvé instantanément dans la liste déroulante

peut être que ta réponse pour moi aidera plus compétant a te répondre.

désolé je suis nouveau sur le forum....

Je voudrais ajouter des mots à la fin de mon tableau et les retrouver dans la liste deroulante

Bonsoir

En cliquant sur C4 (ta liste), clique sur l'onglet "Données", puis outils de données, validation des données et là , dans l'onglet options, Elargis ta source par exemple

=$A$3:$A$500

au lieu de

=$A$3:$A$13

car là tu ne rajoutes pas dans ta liste les données au_delà de la ligne 13

Bon courage

Bye

Bonsoir,

comme le dis Patty5046, il faut élargir la source.

Une autre méthode sans limites

=DECALER($A$3;;;NBVAL($A:$A)-1)

cdt

Henri

Bonjour (...)

J'allais dire la même chose que AFEH

Le problème "mal présenté" doit être en effet de créer une liste déroulante "dynamique" qui grandit toute seule si des valeurs venaient à s'ajouter...

Et donc effectivement la seule solution passe par "DECALER"


J'en profite pour donner quelques explications sur cette fonction aussi utile que complexe (au 1er abord)

la formule est donc =DECALER ( ref ; ligne ; colonne ; [hauteur] ; [largeur ] )

- les champs entre crochets (hauteur et largeur) sont optionnels (mais pas toujours inutiles)

- le champ "ref" désigne n'importe quoi (au sens Excel)

ce peut être une cellule, une colonne, une ligne ou même un groupe de cellules

  • le champ "ligne" désigne la ligne de décalage de départ
  • le champ "colonne" désigne la colonne de décalage de départ

décalage dans cette formule veut dire cela

imaginons "ref" comme désignant une colonne (la 1ere par exemple)

si ligne = 10 => les 10 premières valeurs (donc lignes) de cette colonne sont décalées (donc non prises en compte)

si nous ajoutons en plus colonne = 5 la colonne (1 au départ) est décalée de 5 colonnes (donc nous prenons en compte la colonne 6)

- le champ hauteur permet de déterminer le nombre de lignes à prendre en compte

donc dans la formule de AEFH qui utilise NBVAL() pour ce champ, seules les lignes comportant des données sont prise en compte

Rappel NBVAL compte le nombre de valeur non vide !

- le champ largeur à la même fonction que hauteur dans les horizontal (les colonnes)

il faut noter qu'il permet donc de prendre en compte plus de colonnes que le champ "ref" initial

par exemple = DECALER ( C1 ; 0 ; 0 ; 10 ; 10 ) permet de prendre en compte un "carré" de 10 lignes x 10 colonnes à partir de la cellule A1 (L1C1) puisque les champs "ligne" et "colonne" sont à 0 (zéro)

maintenant quel est l'intérêt de cette formule ?

Il s'agit d'une formule qui permet de rendre une "ref" "dynamique" c'est à dire dont les limites ne sont ni fixes, ni éventuellement connues au départ et c'est là tout son art !

Pour bien la comprendre au début au moins, son fonctionnement, je conseillerais de l'utiliser la notation Algébrique (style L1C1) plutôt que la notation "bataille navale" (style A1)

le fait que dans cette notation le L représente les lignes et le C les colonnes permet je pense de mieux visualiser ce qui se passe...

Autre petite astuce pour voir ce qu'elle fait (ou pas, ou pas bien, au début ça arrive) il faut utiliser une formule nommée et jouer avec la fonction DECALER... les pointillés (les même que lors d'un copier/couper) permettent de voir le résultat de la formule...

Encore un dernier truc il est tout à fait possible de DECALER une fonction déjà DECALER et cela même plusieurs fois ! Attention cependant à ne pas être trop gourmand ! au début en tout cas !


Rechercher des sujets similaires à "liste deroulante"