Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Liés des combobox entre eux

  • Initiateur de la discussion Initiateur de la discussion joums
  • Date de début Date de début

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 !

joums

XLDnaute Occasionnel
bonjour,

je suis bloqué avec les combobox, 😕
En fait j'ai en tout 4 combobox : A / B / C / D

B dépend de A
C et D dépendent de B



j'arrive à lié A / B / C mais je trouve pas la solution pour D

je vous joins un fichier avec un userform et le code que j'ai mis en place.
Merci pour votre aide
A +
 

Pièces jointes

Re : Liés des combobox entre eux

Bonjour joums,
Pour ma part je ne vois pas ce que tu attends dans le combox D.
ColA= comboA
ColB=comboB
ColC=comboC
Logiquement colD= comboD mais ColD est vide
Attendons un peu d'éclaicissement
 
Re : Liés des combobox entre eux

Bonjour joums,
Pour ma part je ne vois pas ce que tu attends dans le combox D.
ColA= comboA
ColB=comboB
ColC=comboC
Logiquement colD= comboD mais ColD est vide
Attendons un peu d'éclaicissement

bonjour, et merci de votre attention pour mon post

Désolé si j'ai pas été tres clair,
en fait il y a 4 combobox (A / B / C / D)
colA = A / colB = B / colC= C et D (car c'est une base de donnée, il faut séparer dans 2 combobox les valeurs de la colonne C)
Donc
B dépend de A
les combobox C et D dépendent de la combobox B

je souhaite que C et D s'affiche en fonction de certain critere
c'est à dire :
Si A = EF alors B = TC et C= theme 1/2/3
ET D n'affiche pas de valeur

Si A <> EF alors B = TC ou TAC et C= theme 1/2/3
ET D affiche theme 4 / 5 comme valeurs

encore merci pour votre aide
A bientot
 

Pièces jointes

Re : Liés des combobox entre eux

Re,
Quelques lignes de + et à voir si c'est ton attente
A+
Code:
Private Sub ComboBox2_Change()
  Set MonDico = CreateObject("Scripting.Dictionary")
  For i = 1 To Range("princ").Count
    If Range("fonda")(i) = Me.ComboBox2 And Range("categorie")(i) = Me.ComboBox1 Then
       temp = Range("princ")(i)
       If Not MonDico.exists(temp) Then MonDico.Add temp, temp
    End If
  Next i
  Me.ComboBox3.List = MonDico.items
  'code en plus
  If Me.ComboBox1 = [A2] Then Exit Sub
  Set MonDico2 = CreateObject("Scripting.Dictionary")
  For i = 1 To Range("princ").Count
  If Range("categorie")(i) = Me.ComboBox1 Then
  temp = Range("princ")(i)
  If Not MonDico.exists(temp) Then MonDico2.Add temp, temp
  End If
  Next
  Me.ComboBox4.List = MonDico2.items
End Sub
 
Re : Liés des combobox entre eux

Re,

merci pour ce code
peux tu m'expliquer le code que tu as rajouter
je viens de le tester les combobox se remplissent cependant ce n'est pas exastement ce que je désire.
En effet, les criteres ne sont pas respectés.
dans mon exemple si la combobox B= TC alors C à des valeurs mais pas D
si la combobox B= TAC alors D à des valeurs mais pas C


mais peux être ai-je mal compris le code que tu as mis.


 
Re : Liés des combobox entre eux

re, cette fois ça va aller....
Attention pour ton essai
rajoute la ligne 13 dans les listes "categorie" et "princ"

Code:
Private Sub ComboBox2_Change()
ComboBox3.Clear: ComboBox4.Clear 'ligne en plus
If Me.ComboBox1 = [A2] Then 'ligne en plus
  Set MonDico = CreateObject("Scripting.Dictionary")
  For i = 1 To Range("princ").Count
    If Range("fonda")(i) = Me.ComboBox2 And Range("categorie")(i) = Me.ComboBox1 Then
       temp = Range("princ")(i)
       If Not MonDico.exists(temp) Then MonDico.Add temp, temp
    End If
  Next i
  Me.ComboBox3.List = MonDico.items
  'd'ici à en bas en plus
  Else
  Set MonDico = CreateObject("Scripting.Dictionary")
  For i = 1 To Range("princ").Count
  If Range("categorie")(i) = Me.ComboBox1 Then
  temp = Range("princ")(i)
  If Not MonDico.exists(temp) Then MonDico.Add temp, temp
  End If
  Next
  Me.ComboBox4.List = MonDico.items
  End If
End Sub
 
Re : Liés des combobox entre eux


Re,
je dois pas faire la bonne manip....🙁
quelle ligne dois_je rajouter et où ?
je dois copier du code dans les autres combobox ?
A quoi correspond [A2] ?
merci
 
Re : Liés des combobox entre eux

Voici le fichier en retour,
[A2] est la cellule A2
si combo1= la cellule A2 alors


La macro en combobox2_Change, mais avec le fichier ca iras mieux


ok pour les précisions,
je refléchi toujours sur la macro car
malheureusement le fichier ne fait pas fait pas ce que je souhaite
je cale dessus depuis hier.....😕
merci de votre aide

quels sont les précisions que je pourrai vous apporter?
peux etre un autre exemple?
 
Re : Liés des combobox entre eux

oui .....même plusieurs exemple que je puisse comprendre ta demande

meme en me relisant c vrai que c'est pas tres clair... lol

voici un exemple qui me semble etre plus simple
avec les résultats attendu dans chaque combobox

Dans le précédent fichier seul la premiere valeur du combobox A fonctionne
le résultat des autres valeurs sont erronés

merci
 

Pièces jointes

Re : Liés des combobox entre eux

bonjour joums,youki
en tête de page ajout de : option compare text
ajout code pour mise à jour des plages (voir menu insertion, noms définis) dans userform_initialize
changer code dans combobox2
à bientôt
 

Pièces jointes

Re : Liés des combobox entre eux

bonjour joums,youki
en tête de page ajout de : option compare text
ajout code pour mise à jour des plages (voir menu insertion, noms définis) dans userform_initialize
changer code dans combobox2
à bientôt

bonjour, bebere,

merci, le résultat est nickel 🙂
il me reste plus qu'à revoir le code pour bien le comprendre
Encore merci pour votre aide, à toi et à youki
je pense que ce post pourra être utiliser par d'autre personnes


j'ai juste une petite question, pourquoi dans le code, mettre une variable
derl = .Range("A1").End(xlDown).Row ?
Pourquoi ne pas définir juste la plage qui nous intéresse

Bonne soirée à vous
A binetôt
 
- 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

Réponses
40
Affichages
2 K
Réponses
4
Affichages
268
  • Question Question
Microsoft 365 Fonction si
Réponses
7
Affichages
229
Réponses
18
Affichages
673
Réponses
28
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…