Liste déroulante et ajout automatique d'une nouvelle donnée

Bonjour,

J'ai crée une liste dans un onglet "Ville" avec dans la colonne B des villes à chaque ligne: Paris, New York, etc...

J'ai déjà utilisé un code pour faire en sorte que si on ajoute manuellement une nouvelle ville ou si on modifie une case, toute la colonne se mette automatiquement dans l'ordre alphabétique.

Dans l'onglet principal cette fois, je souhaite avoir une case "renseigner ville" avec la case d'à coté qui soit une liste déroulant. Jusqu'ici pas de soucis, j'utilise la validation de données et sélectionne ma liste de ville.

Je souhaiterais en revanche laisser à l'utilisateur la possibilité d'ajouter une ville qui ne soit pas dans la liste déroulante, sans qu'il ait à aller sur l'onglet "ville" et à la rajouter manuellement.

Exemple: il va sur la case, s'affiche alors la liste déroulante, il voit que sa ville (mexico) n'y est pas, et donc tape à la main Mexico. Et l'idéal serait un message du genre "Cette ville n'est pas dans la liste. Souhaitez-vous l'ajouter?" "Oui" "Annuler". Et si il dit oui, alors Mexico sera intégré dans la colonne B de l'onglet "ville" et du coup la prochaine fois que qqun utilise la liste déroulante, Mexico sera disponible.

Comment faire? Avez-vous le code pour faire cela?

Merci beaucoup d'avance.

Bonjour, Jse99,

Un fichier exemple serait le bienvenu même avec des données fantaisistes.

Dans l'attente de te lire

Cordialement

Pierrot

Voilà un excel exemple:

Pour le moment j'ai la possibilité d'aller dans la colonne Ville de mon tableau, et de là j'ai un menu déroulant qui me propose des villes.

Et je veux pouvoir ajouter une nouvelle ville, par exemple Caen, qu'un message s'affiche pour me demander confirmation de l'ajout de cette nouvelle ville à la liste des villes possibles, et que si je confirme cette ville soit ajoutée.

De telle sorte que si par la suite je selectionne une autre case de la colonne ville, je puisse trouver Caen parmi les villes disponibles dans la liste déroulante.

Un code VBA serait-t'il la solution?

Si en plus c'est trier alphabétiquement ce serait parfait.

Merci beaucoup pour votre aide.

91exemple.xlsx (9.81 Ko)

Bonjour, Jse99

Voilà un fichier à tester

Amicalement

Pierrot

225exemplecp01.xlsm (22.45 Ko)

Bonjour,

Merci beaucoup pour votre aide. Cela s'approche en effet de ce que j'avais imaginé.

En revanche il n'y a pas le message avant l'ajout automatique pour confirmer l'ajout. Y'a t'il un code qui ne s'est pas activé?

Merci encore!

Bonsoir,

Voilà le fichier modifié

Si vous souhaitez un fichier plus complexe,, genre fichier clients, j'ai ce qu'il vous faut.

mais trop gros pour être joins ici.

Amicalement

Pierrot

171exemplecp01.xlsm (24.77 Ko)

Bonjour

Bonjour Cape

Ma contribution. A tester.

198exemple-v1.xlsm (25.26 Ko)

Bonjour, gmb,

une solution parmi d'autres.

merci de ton aide,

Bonne journée.

Pierre Cappe (avec 2 P)

Bonjour,

Merci beaucoup à vous deux pour votre aide. Le résultat me convient parfaitement, vous m'enlevez une belle épine du pied!

Bonne journée!

Bonjour,

C'est avec plaisir, n'oublies pas de cocher le problème comme étant résolu, avec la coche Verte.

Pierrot

Bonjour,

C'est bon j'ai bien coché le sujet comme étant résolu.

J'ai adapté le code à mon véritable tableau pour la colonne Ville (voir en pièce jointe). Le problème c'est que je souhaite utiliser ce principe de code pour différentes colonnes.

J'ai donc créé un onglet par liste, et j'ai essayé de copier/coller le code en changeant les noms de Sheets pour que ça marche.

Mais ça ne marche pas. Ca me dit notamment "Nom ambigu détecté : Worksheet_Change".

Comment faire pour que ce système de code puisse marcher également pour les colonnes suivantes:

  • Nom
  • RT
  • Label
  • Chauffage
  • Ecs
  • Enveloppe
  • Système
  • Marque

Merci pour votre aide. Je pensais m'en sortir en faisant du copier/coller intelligemment mais ça n'a pas l'air de suffire.

17bibliotheque.xlsm (45.20 Ko)

Tu écris :

Comment faire pour que ce système de code puisse marcher également pour les colonnes suivantes:

  • Nom
  • RT
  • ...
Je t'ai ajouté les 2 premiers , Nom et RT.

Sauras-tu t'en inspirer et ajouter les autres ? Il suffit d'un copier-coller et de quelques modifications d'adresse et de nom...

Bon courage !

Bye !

Merci, je vais essayer, en espérant réussir. Ca prouvera que j'ai compris un minimum le code .

Bonjour,

J'ai suivi avec intérêt ces échanges qui semblent se rapprocher de mon besoin. Autant dire de suite que je n'ai pas un très bon niveau.

J'ai un fichier de saisie de dépenses et recettes avec des catégories et des intitulés qui ouvrent une liste déroulante contenue dans une feuille séparée du classeur. Je voudrais que, lorsque je saisis un intitulé qui n'est pas dans la liste il s'y ajoute (à cette liste) automatiquement et si possible s'y intègre en ordre alphabétique.

Et lorsque je saisis les premières lettres d'un intitulé que la liste démarre à ces premières lettres. Comme dans une liste de pays.

Si je tape Ind la boîte de dialogue commence à Ind... Inde, Indonésie etc...

Je ne sais pas faire. Quelqu'un pourrait m'aider SVP ?

Je fais ce post depuis l'Inde où je suis travailleur volontaire en ONG. C'est pour saisir des dépenses et des recettes.

J'ai trouvé un modèle qui me convient bien mais sans la fonction qui me plairait et faciliterait bien surtout pour des gens pas plus doués que moi !

Merci beaucoup

Jean Marc

Rechercher des sujets similaires à "liste deroulante ajout automatique nouvelle donnee"