Microsoft 365 Combobox sans doublon et avec auto complétion et liée à une autre combobox

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

CortoXls

XLDnaute Nouveau
Bonjour
Sur le fichier en PJ sur la feuille de saisie il y a deux combobox
une pour le code postal et une pour la ville
Je voudrais que pour le code postal il n'y ait pas de doublons et une auto-complétion pour la ville et le code postal.
Actuellement je suis en office 365 et pour l'auto-complétion pour la ville comme pour le code postal ça fonctionne mais à priori pas avec XL 2021 ou XL2016. Quel paramètre faut-il changer ?

Ensuite mon problème principal est le suivant je ne parviens pas à obtenir le résultat suivant :
1/ Soit je saisis le code postal dans la combobox1 et j'obtiens dans la combobox2 la liste des villes correspondant au code postal
2/ Soit je saisis la ville et le code postal associé s'inscrit automatiquement.--> ça fonctionne dans ce sens à condition que la cellule SaisieCP soit vide.
Pour démarrer mes test j'ai donc mis un bouton RAZ qui vide les deux cellules.

Merci de votre aide pour la suppression des doublons dans le code postal et pour obtenir la liste des villes en fonction du code postal saisi.
 

Pièces jointes

Dernière édition:
Bonsoir,

Regardes si cela correspond à ce que tu veux en fonction de ce que j'ai compris
Bonjour,
Désolé, ça ne fonctionne pas.
Dès que je commence à saisir le code postal la sélection bascule sur la 2ème combobox et le programme plante dans la procédure Private Sub ComboBox2_Change() sur la ligne : Ligne = Sheets("Divers Listes").Range("B:B").Find(Nom, , , xlPart).Row

VB:
Private Sub ComboBox2_Change()

Dim Nom  As String
Dim Ligne As Integer

Nom = Me.ComboBox2.Value
Ligne = Sheets("Divers Listes").Range("B:B").Find(Nom, , , xlPart).Row
    Sheets("Formulaire de saisie").Range("SaisieCB1").Value = Sheets("Divers Listes").Cells(Ligne, 1).Value
Range("SaisieCB2") = Me.ComboBox2

End Sub

1742052879593.png


Les deux combobox sont paramétrées avec MatchEntry = 1-fmMatchEntryComplete
J'ai essayé en changeant ce paramètre mais ça ne change rien.
J'ai rajouté dans les deux procédures combobox_change la ligne suivante :
Application.EnableEvents = True
Mais aucun changement
Par contre si je choisis le code postal dans la liste déroulante, alors la liste des villes associées est bien dans la 2ème combobox donc la solution est à priori toute proche.
Il faudrait que je puisse saisir le code en entier ...
Finalement je me demande si j'ai besoin d'une combobox pour le code postal...
Peut-être qu'en renseignant le code dans la cellule tout simplement...
Une idée ?
 
Dernière édition:
Finalement je me demande si j'ai besoin d'une combobox pour le code postal...
Bonsoir,
C'est sûr que si tu saisis le code postal au lieu de le sélectionner c'est curieux,
car la procédure change du combo doit être adaptée à cette façon de fonctionner.

Essaies comme ceci cela devrais fonctionner
 

Pièces jointes

Bonsoir,
C'est sûr que si tu saisis le code postal au lieu de le sélectionner c'est curieux,
car la procédure change du combo doit être adaptée à cette façon de fonctionner.

Essaies comme ceci cela devrais fonctionner
Bonsoir,
Oui je saisis le code postal directement car c'est plus rapide !
Je teste ta proposition demain si possible et je te tiens au courant.
Merci de ton aide !
 
Bonsoir.
Info: Avec un objet ComboBoxLiées on ne s'occupe plus du tout des Change des ComboBox qui lui sont confiées.
En revanche il déclenche lui même des évènements plutôt relatifs à la combinaison de l'ensemble des ComboBox prises en charge, notamment pour communiquer le numéro ou la liste des numéros de lignes contenant la combinaison.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour