Utiliser un code VBA

Bonjour,

Je souhaites obtenir des cases (en fait, toute une colonne), avec une liste déroulante à choix multiples.

J'ai trouvé cette page qui présente un exemple parfait de ce que je souhaite :

http://boisgontierjacques.free.fr/pages_site/listes_cascade.htm

Le code qui m'intéresse est dans la section choix multiple : DV Choix Remarques ListBox Options

Je vous mets la pièce jointe de ce fichier (que vous retrouvez sur la page ci-dessus).

Je vais être franc, je n'ai pas trouvé ma réponse sur ce forum ou google, et je n'ai pas le temps (en ce moment) de me mettre au VBA.

Je souhaite uniquement utiliser ce code et l'adapter à mon document personnel (une autre liste, dans un onglet "db").

Je n'arrive pas à trouver la méthode pour obtenir cette liste déroulante à choix multiples. Dans mon document personnel, où écrire le code ? Que dois-je adapter pour que le code fonctionne sur mon classeur excel 2016 ?

Merci beaucoup

Bonjour,

Sans voir ton classeur et sans plus d'explications, il sera difficile de te donner un avis sur les adaptations nécessaires.

Pour visualiser le code, sélectionne l'onglet "Choix" puis clic droit et "Visualiser le code".

A+

Bonjour frangy,

Le classeur est en PJ du premier post.

Mon classeur à moi contient quelques données perso, que je dois prendre le temps de supprimer.

Mais dans les faits, je n'ai besoin de changer que l'onglet où se trouve ma liste, les cellules concernées par la liste, et les cellules qui doivent présenter cette liste déroulant à choix multiple.

Je reviens avec mon fichier perso ? Je peux le simplifier au point que ça ne ressemble pas du tout à ce que je veux, mais le principe sera là : comment "transvaser" le code vers un autre fichier excel ?

Il me semble que tout le code est écrit dans le classeur en PJ, dès l'ouverture.

Merci

La plage de cellules qui reçoit le résultat de la sélection est indiquée par

If Not Intersect([A2:A10], Target) Is Nothing Then

La référence à la feuille et à la plage qui contiennent la liste est donnée par la ligne de code

Me.ListBox1.List = Sheets("BD").Range("A2:A28").Value

Le code peut être transféré par un simple copier / coller.

Pour t'aider, voici un exemple où les plages et nom de feuille ont été modifiés.

21tuttle.zip (45.65 Ko)

Fais ces adaptations et reviens vers nous si tu ne parviens pas à obtenir le résultat attendu.

Il faudra alors ton fichier perso sans données confidentielles.

A+

Lorsque j'adapte à mon document, cela me donne l'image en PJ...

nouveau tableau en cours de realisati

Lorque je clique sur OK, cela me donne :

nouveau tableau en cours de realisati 2

J'ai enregistré dans un format qui accepte les macros pourtant...

Bonjour,

Aucune raison que le code ne fonctionne pas... !

As-tu inséré une ListBox nommée ListBox1 dans ta feuille ?

Ah euh non... Je ne connais pas la marche à suivre pour faire cela...

Onglet Développeur : tu fais Insérer > Zone de liste (contrôle ActiveX).

Cela suffit puisque la macro de Boisgontier initialise tous les paramètres de mise en forme. Il te suffit de séléectionner une cellule pour que tout se mette en route...

Cordialement.

Bonjour Tuttle, frangy, MFerrand, toutes et tous,

Si tu avais fourni comme te l'a demandé frangy Aujourd’hui, 07:01, ne serait-ce qu'un classeur avec le nom de tes onglets (qui eux ne sont pas confidentiel) avec comme infos l'onglet et la colonne ou tu veut appliquer ce code "qui fonctionne parfaitement", il y a longtemps que ce serait résolu.

Sachant que dés ton premier message tu annonçais la couleur.

je n'ai pas le temps (en ce moment) de me mettre au VBA

Cordialement

Désolé. Je fais ça dès que possible.

Merci.

Voilà, j'espère ne pas avoir oublié de choses confidentielles.

Dans mon tableau recap, la première ligne a un formatage conditionnel (est-ce que ça peut empêcher la macro de faire son office ? Sans jeu de mot... )

17test-tuttle-2.xlsm (312.09 Ko)

Pour le moment le problème est que tu appelles une ListBox que tu n'as pas mis sur la feuille. Résultat: VBA ne la trouve pas !

Eh oui, je me doutais bien !

Mais pour le coup, je ne sais pas comment rajouter cette listbox sur la feuille.

J'y suis presque !!!

Mon post d'hier 16h58 est suffisamment précis !

Tu n'as jamais inséré d'objet sur une feuille ? Jamais de bouton ou autre contrôle ?

Il est temps de s'y mettre !!

Un clic pour ouvrir l'onglet Développeur,

un clic sur Insérer (dans la zone Contrôle),

un clic sur le contrôle Zone de liste (Contrôle ActiveX),

un clic dans la feuille pour l'insérer.

Rien de plus.

Rechercher des sujets similaires à "utiliser code vba"