[VBA] Sélectionner des cases pour nommer une plage
Walaboss
-
Walaboss -
Walaboss -
Bonjour,
En ce moment je plante sur un sujet de listes liées, et pour le résoudre je pensais au sacro-saint VBA.
L'idée est que j'ai une base de donnée avec deux colonnes qui m'intéressent, l'une précisant un secteur et la deuxième précisant le poste du secteur. Comme tous les secteurs sont dans la même colonne, j'aurais aimé pouvoir faire le tri entre ces différents secteurs pour proposer une liste avec les différents secteurs et une deuxième liste liée au secteur sélectionné dans la première liste.
Mais voilà, les données n'étant pas statiques, j'aimerai faire en sorte que ces listes s'adaptent aux données présentes dans mon tableau. D'où l'idée du VBA.
Auriez-vous une idée pour faire en sorte que ma première liste propose les différents secteurs (chaque secteur ne devant apparaître qu'une seule fois dans ma liste) et que la deuxième liste propose les postes associés (dans la même logique) ? Je vous joint un lien vers un fichier qui répond à la mise en forme qui m'est imposée et sur la base de laquelle je suis censé travailler.
Peut-être que ma fixation sur le VBA ne répond pas non plus à la requête.
http://www.cjoint.com/c/EFfhQwOfBPG
Merci d'avance et bon courage !
En ce moment je plante sur un sujet de listes liées, et pour le résoudre je pensais au sacro-saint VBA.
L'idée est que j'ai une base de donnée avec deux colonnes qui m'intéressent, l'une précisant un secteur et la deuxième précisant le poste du secteur. Comme tous les secteurs sont dans la même colonne, j'aurais aimé pouvoir faire le tri entre ces différents secteurs pour proposer une liste avec les différents secteurs et une deuxième liste liée au secteur sélectionné dans la première liste.
Mais voilà, les données n'étant pas statiques, j'aimerai faire en sorte que ces listes s'adaptent aux données présentes dans mon tableau. D'où l'idée du VBA.
Auriez-vous une idée pour faire en sorte que ma première liste propose les différents secteurs (chaque secteur ne devant apparaître qu'une seule fois dans ma liste) et que la deuxième liste propose les postes associés (dans la même logique) ? Je vous joint un lien vers un fichier qui répond à la mise en forme qui m'est imposée et sur la base de laquelle je suis censé travailler.
Peut-être que ma fixation sur le VBA ne répond pas non plus à la requête.
http://www.cjoint.com/c/EFfhQwOfBPG
Merci d'avance et bon courage !
1 réponse
-
Bonjour,
En général, pour les listes en cascade, on utilise la fonction Données>Validation.
Pour les listes dynamiques, ce site indique une solution (sans VBA) : http://boisgontierjacques.free.fr/pages_site/listes_cascade.htm#LDInd
Bon courage à toi !-
Merci, et finalement je me retrouve à un nouveau dilemme x) ! Avec la fonction INDIRECT() j'ai le souci de ne pas réussir à dérouler une liste pour une seule plage, je ne sais pas pourquoi. J'ai mes plusieurs colonnes qui sont nommées, mais pour une raison que j'ignore, pour la deuxième colonne (et seulement la deuxième colonne), il m'indique que la source est reconnue comme erronée...
Je ne sais pas ce qui ne marche pas pour le coup :/. -
Peux-tu fournir ton fichier sur https://www.cjoint.com/ ?
-
-