Charger ComboBox Conditionnellement à un autre via RechercheV et sans Doublon
Résolu
sgh.chafaa
Messages postés
19
Date d'inscription
Statut
Membre
Dernière intervention
-
sgh.chafaa Messages postés 19 Date d'inscription Statut Membre Dernière intervention -
sgh.chafaa Messages postés 19 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tout le monde :)
pas fort en VBA comme d'habitude, je cherche toujours de combiner les codes que je trouve sur internet pour arriver à mon objectif
cette fois ci,je cherche de charger un combobox2 conditionnellement au premier, un équivalant de RechercheV mais en VBA code
le premier combobox pour le choix des nationalité ,nommé ComboBoxNationalite se charge à l'ouverture de l'userForm , nommé: FenterePrincipal
Cette liste des nationalités se charge sans doublon (code déja opérationnel, à voir dans le fichier ci-joint)
Ce que je Cherche:
1- Remplir le deuxième combobox, nommé: ComboBoxRegion, conditionnellement au premier, par exemple en choisissant Nationalité : "Française", la liste des régions sera remplit uniquement avec Lyon, Paris et Nice
2- Aussi que cette liste soit sans doublon, exactement comme la première (dans ce cas Région"Nice" ne soit pas répéter 4 Fois)
Quelqu'un peut me donner un coup de main SVP ?
https://www.dropbox.com/s/fqttr7csrpv3wxn/combobox%20conditionnel%20et%20sans%20doublon.xlsm?dl=0
pas fort en VBA comme d'habitude, je cherche toujours de combiner les codes que je trouve sur internet pour arriver à mon objectif
cette fois ci,je cherche de charger un combobox2 conditionnellement au premier, un équivalant de RechercheV mais en VBA code
le premier combobox pour le choix des nationalité ,nommé ComboBoxNationalite se charge à l'ouverture de l'userForm , nommé: FenterePrincipal
Cette liste des nationalités se charge sans doublon (code déja opérationnel, à voir dans le fichier ci-joint)
Ce que je Cherche:
1- Remplir le deuxième combobox, nommé: ComboBoxRegion, conditionnellement au premier, par exemple en choisissant Nationalité : "Française", la liste des régions sera remplit uniquement avec Lyon, Paris et Nice
2- Aussi que cette liste soit sans doublon, exactement comme la première (dans ce cas Région"Nice" ne soit pas répéter 4 Fois)
Quelqu'un peut me donner un coup de main SVP ?
https://www.dropbox.com/s/fqttr7csrpv3wxn/combobox%20conditionnel%20et%20sans%20doublon.xlsm?dl=0
Configuration: Windows / Chrome 74.0.3729.169
A voir également:
- Charger ComboBox Conditionnellement à un autre via RechercheV et sans Doublon
- Doublon photo - Guide
- Partager des photos via un lien - Guide
- Via michelin carte - Télécharger - Transports & Cartes
- Supprimer doublon excel - Guide
- Impossible de charger l'image haute résolution messenger - Forum Xiaomi
2 réponses
Re-Bonjour
Je commence à avancer mais je me bloque toujours au niveau du boucle cumulatif des region selon la nationalité
Private Sub ComboBox1_Change()
Dim D As Worksheet
Set D = Worksheets("Feuil1")
Dim dictionary
Set dictionary = CreateObject("Scripting.Dictionary")
On Error Resume Next
'ComboBox2 = Application.WorksheetFunction.VLookup(ComboBox1.Text, Range("A2:B10000"), 2, faux)
For Each region In Range(D.[B1], [B10000].End(xlUp))
'dictionary.Item(region.Value) = region.Value
'dictionary.Item(region.Value) = Application.WorksheetFunction.VLookup(ComboBox1.Text, Range("A2:B10000"), 2, faux)
dictionary.Item(Application.WorksheetFunction.VLookup(ComboBox1.Text, Range("A2:B10000"), 2, faux)) = Application.WorksheetFunction.VLookup(ComboBox1.Text, Range("A2:B10000"), 2, faux)
Next region
Me.ComboBox2.List = dictionary.items
Ci-joint: https://www.dropbox.com/s/m80vav37i1izll6/combobox%20conditionnel%20et%20sans%20doublon1.xlsm?dl=0
Je commence à avancer mais je me bloque toujours au niveau du boucle cumulatif des region selon la nationalité
Private Sub ComboBox1_Change()
Dim D As Worksheet
Set D = Worksheets("Feuil1")
Dim dictionary
Set dictionary = CreateObject("Scripting.Dictionary")
On Error Resume Next
'ComboBox2 = Application.WorksheetFunction.VLookup(ComboBox1.Text, Range("A2:B10000"), 2, faux)
For Each region In Range(D.[B1], [B10000].End(xlUp))
'dictionary.Item(region.Value) = region.Value
'dictionary.Item(region.Value) = Application.WorksheetFunction.VLookup(ComboBox1.Text, Range("A2:B10000"), 2, faux)
dictionary.Item(Application.WorksheetFunction.VLookup(ComboBox1.Text, Range("A2:B10000"), 2, faux)) = Application.WorksheetFunction.VLookup(ComboBox1.Text, Range("A2:B10000"), 2, faux)
Next region
Me.ComboBox2.List = dictionary.items
Ci-joint: https://www.dropbox.com/s/m80vav37i1izll6/combobox%20conditionnel%20et%20sans%20doublon1.xlsm?dl=0
Finalement !!
Voilà la solution , : deuxième combobox dépends du premier:Sans Doublon et Trié en Plus
J'ai essayé de commenté le code au maximum pour que ça soit clair
honnêtement c ps moi que j'ai codé, mais j'ai compris superficiellement le code sauf le fonctionnement du fonction TRIE
Source Réference (et par la même occasion le grand merci) : http://boisgontierjacques.free.fr/pages_site/formulairecascade.htm
Bonne Journée à tous
Fichier: https://forum.excel-pratique.com/download/file.php?id=237156
Voilà la solution , : deuxième combobox dépends du premier:Sans Doublon et Trié en Plus
J'ai essayé de commenté le code au maximum pour que ça soit clair
honnêtement c ps moi que j'ai codé, mais j'ai compris superficiellement le code sauf le fonctionnement du fonction TRIE
Source Réference (et par la même occasion le grand merci) : http://boisgontierjacques.free.fr/pages_site/formulairecascade.htm
Bonne Journée à tous
Fichier: https://forum.excel-pratique.com/download/file.php?id=237156