Liste à sélection multiple : un mode d'emploi "type"?

Bonjour,

J'ai cherché sur le forum un mode d'emploi pour réaliser une liste à sélection multiple (plusieurs items qui apparaissent dans une même cellule après les avoir choisis, de façon cumulative dans une liste déroulante). J'ai bien trouvé des exemples, mais pas de "recette" pour réaliser cela. Je n'ai jamais utilisé de VBA avant aujourd'hui - je crois qu'il n'y a pas d'autre solution (?) - mais je veux bien tenter l'expérience!

Le fichier sur lequel je travaille est voué à s'agrandir. Il s'agit de caractériser une colonne par des choix (A, B, ou C ou A et B, ou A et C, etc...) qui apparaissent dans la même cellule - cela me permettra de faire des tris et sélections. Je ne sais pas si c'est très clair...

J'ai tenté de faire un formulaire mais je n'arrive pas à utiliser les macros, et encore moins à corriger les éventuelles erreurs...

Je joins mon fichier pour mieux expliquer :

Je voudrais afficher des listes à sélection multiple pour les colonnes K, O et S de l'onglet "Récapitulatif Lieux". Les caractéristiques à intégrer dans chaque colonne sont dans les onglets correspondants aux noms des colonnes.

Quelqu'un pourrait-il m'aiguiller?

Est-il possible de rajouter des lignes par la suite en ayant toujours la possibilité d'utiliser ces listes de sélection multiple?

Merci beaucoup par avance,

Bonne soirée!

Bonjour Marie, bonjour le forum,

As-tu vraiment besoin de 3 onglets pour les listes ? Ne pourrait-on pas placer toutes les listes dans un seul onglet nommé Listes (par exemple) ?

Bonjour ThauThème,

Effectivement, je peux tout aussi bien mettre les éléments de liste dans un seul onglet, ça n'a pas d'importance.

Est-ce que cela influe sur la manip' à faire pour réaliser la liste à sélection multiple?

Merci pour ta réponse,

Bon WE!

Bonjour,

Ci-joint ton fichier test ... avec tes trois listes ...

Je ne sais pas si cela correspond à ton attente ...

Si tu recherches une explication générique : https://www.excel-pratique.com/fr/apprendre/liste_deroulante.php

Bonsoir le fil, bonsoir le forum,

En pièce jointe ton fichier modifié avec le code commenté. J'ai modifié l'UserForm1 pour qu'il contienne toutes les données d'une ligne. Tu peux désormais l'utiliser pour Ajouter, Modifier ou Supprimer les données. L'avantage de l'UserForm est que si tu ajoutes une données qui n'existait pas dans une ComboBox, sa liste est automatiquement mise à jour.

Mais tu peux continuer à Ajouter directement dans le tableau. Tu peux aussi ajouter des données dans les listes. Elles seront alors automatiquement prises en compte dans les validations de données des colonnes G, H, K, L, O et S...

Tout cela se fait par l'intermédiaire des Noms du Gestionnaire de Noms (bandeau Formules) qui contiennent la formule DECALER permettant l'alimentation dynamique des comboboxes et des Listes de Validation de Données...

Pour faciliter la récupération ou l'envoie des données (Formulaire <=> Tableau), j'ai utilisé la propriété [Tag] pour tous les contrôles contenant les données (pour les autres, Labels, CommandButtons, cette propriété est vide). Elle correspond au numéro de la colonne dans laquelle la valeur du contrôle doit être renvoyée. Cela permet de boucler facilement. Comme elle est de type String, je la convertis en Byte pour les adresses Cells(Ligne, Colonne).

La variable publique LI (dans le module [Module1] fait le reste. En fonction de sa valeur, l'utilisateur va pouvoir Ajouter ou Modifier/Supprimer une ligne de données.

J'ai rajouté deux boutons pour lancer les UserForms.

• Le bouton Ajouter ouvre l'UserForm1 vierge et définit la ligne LI comme étant la première ligne vide de la colonne A.

• Le bouton Rechercher ouvre l'UserForm2 qui permet à l'utilisateur de rechercher rapidement la ligne à modifier.

Il suffit de taper la texte à rechercher (une partie suffit) dans la Textbox1. Il peut s'agir du texte de n'importe quelle colonne.

• La ListBox1 affiche alors la liste des lignes contenant le texte (ou rien si aucune occurrence du texte n'est trouvée).

• Un Clic dans une ligne de la ListBox1 redéfinit la ligne LI et ouvre l'UserForm1 avec les données correspondantes. Le bouton Ajouter devient Modifier. Le bouton Supprimer devient visible.

On peut aussi Modifier/Supprimer une ligne en double-cliquant dans la colonne A de celle-ci. L'UserForm1 s'ouvre avec les données de la ligne.

La Suppression de fait après validation dans un message. Après le "Oui" elle est irréversible...

Ce qui reste à faire :

• La gestion des champs obligatoires : il faut que tu définisses lesquels

• La gestion du format de certains champs : Numérique bloqué à 5 digits (COG), Heures (temps depuis Romans), Km (Distance depuis Romans), Euros (colonnes P, Q et R), dates (Disponibilités), si nécessaire.

65marie-v01.xlsm (55.79 Ko)

Salut Thauthème

J'hallucine ...

Tout ce que tu as fait pour Marie ...

A mon avis, tu as gagné ta place au Paradis .... )

johnny-hallyday a écrit :

Oh Marie si tu savais

Tout le mal que l'on me fait

Oh Marie si je pouvais

Dans tes bras nus me reposer

Évanouie mon innocence

Tu étais pour moi ma dernière chance

Peu à peu tu disparais

Malgré mes efforts désespérés

Et rien ne sera jamais plus pareil

J'ai vu plus d'horreurs que de merveilles

Les hommes sont devenus fous à lier

Je donnerais tout pour oublier

Oh Marie si tu savais

Tout le mal que l'on me fait

Oh Marie si je pouvais

Dans tes bras nus me reposer

Et je cours toute la journée

Sans savoir où je vais

Dans le bruit dans la fumée

Je vois des ombres s'entretuer

Demain ce sera le grand jour

Il faudra faire preuve de bravoure

Monter au front, en première ligne

Oh Marie je t'en prie fais-moi un signe

Allongé dans l'herbe je m'éveille

J'ai vu la mort dans son plus simple appareil

Elle m'a promis des vacances

La mort m'a promis sa dernière danse

Oh Marie si tu savais

Tout le mal que l'on m'a fait

Oh Marie j'attendrai qu'au ciel

Tu viennes me retrouver

Oh Marie j'attendrai qu'au ciel

Tu vienne me retrouver

Bonjour le fil, bonjour le forum,

Pfffff ! Ça va pas non !... Vous voulez me mettre la Chouma ou quoi ?!...

Désolé Steelson, mais Johnny écrit très peu. Je me demande même s'il sait écrire d'ailleurs... C'est Gerald de Palmas qui est l'auteur et le compositeur de cette belle chanson. Mais comme il était sur la route toute la sainte journée il n'a pas pu la chanter. T'imagines si c'est lui qui l'avait chantée ! J'en jaunis à l'idée....

ThauThème a écrit :

Désolé Steelson, mais Johnny écrit très peu.

exact, bon je te laisse monter au firmament

Bonjour le fil, bonjour le forum,

Parce qu'ils m'ont énervés les deux là ! Mais surtout parce que j'ai pensé qu'il pouvait y avoir plus d'une salle complémentaire et plus d'un équipement extérieur, voici en pièce jointe la version 2 qui permet cela :

@Steelson : Du coup, j'ai réécouter Johnny avec sa Marie. Ha le s... comme il assure ! Pourtant je ne suis pas fan... Sinon j'ai le vertige alors ma hauteur maxi doit avoisiner les deux mètres...

32marie-v02.xlsm (61.89 Ko)

Waaah, super!

Merci James et ThauThème!

C'est parfait, exactement ce que je voulais, et avec des bonus auxquels je n'avais pas pensé.

Merci beaucoup, ça me facilite grandement la vie.

Bonne journée à vous!

PS : je ne sais pas si je dois vous remercier aussi pour la chanson mais ça m'a fait rire!

Bonjour Marie,

Merci pour tes très gentils remerciements qui vont tous directement ... droit au coeur de ThauThème ...

marie2607 a écrit :

PS : je ne sais pas si je dois vous remercier aussi pour la chanson mais ça m'a fait rire!

On aurait même pu la customiser ...

Oh Marie si tu savais

Tout le mal qu'il s'est donné

Oh Marie s'il pouvait

Dans tes bras nus se reposer

Salut ThauThème et James ... c'est juste un poil de taquinerie ! de quoi pimenter cet excellent faux rhum

Bonjour le fil, bonjour le forum,

Sont fadas ces deux !... Javais un doute mais là c'est clair.

Le bon coté c'est que ça donne des posts agréables à lire et à rire.

Bonjour à tous,

Merci beaucoup pour votre aide précieuse! Ca dépasse (en bien!) ce que j'avais imaginé, c'est parfait!

J'espère arriver à reproduire un modèle comme celui-ci, peut-être en me mettant progressivement à la VBA.

Bonne journée, et merci encore!

Bonjour,

Merci pour tes remerciements ...

Pour le fun ... je te joins une autre proposition ...

Rechercher des sujets similaires à "liste selection multiple mode emploi type"