XL 2010 Liste en cascade à 2 niveaux

TheProdigy

XLDnaute Impliqué
Bonjour,

Ma question serait bête mais je ne suis pas arrivé à la réaliser. Vous m'avez aidé à réalisé une liste en cascade à 5 niveaux, mais je me trouve incapable de la réaliser celle de 2 niveaux pour les Combobox 6 et 7. J'ai réussi à alimenter le ComoBox 6 mais pas le ComboBox 7
En ComboBox 7 je dois avoir la deuxième colonne de la feuille "parametres"

Quelqu’un pourrait m'aider ?

Merci
 

Pièces jointes

  • exemple.xlsm
    45 KB · Affichages: 66

Lone-wolf

XLDnaute Barbatruc
Bonsoir adil, pierrejean, le Forum :)

Met tb() en entête du formulaire, ensuite copie ce code

VB:
Private Sub ComboBox6_Click()
  Set p = Sheets("parametres")
  Set mondico = CreateObject("Scripting.Dictionary")
  tb = p.Range("a2:b" & p.Range("a" & Rows.Count).End(xlUp).Row).Value
  For i = LBound(tb, 1) To UBound(tb, 1)
  If tb(i, 1) = Me.ComboBox6 Then mondico(tb(i, 2)) = ""
  Next i
  temp = mondico.keys
  Call Tri(temp, LBound(temp), UBound(temp))
  Me.ComboBox7.List = temp
End Sub

Change aussi tous les [A 65 000] par Range("a" & Rows.Count) ou autre colonne.

J'ai un doute avec ceci
With Sheets("Annuaire")
no_ligne = .Cells(Rows.Count, 1).End(xlUp).Row + 1
'Insertion des valeurs sur la feuille
.Cells(no_ligne, 8) = Now 'Colonne H - Mais le texte c'est Achat?? o_O
.Cells(no_ligne, 9) = CDate(DTPicker1.Value)
End With

VB:
Private Sub CommandButton_Ajouter_Click()
Dim no_ligne As Long, civilite As String
   
      With Sheets("Annuaire")
        no_ligne = .Cells(Rows.Count, 1).End(xlUp).Row + 1
        'Insertion des valeurs sur la feuille
        .Cells(no_ligne, 1) = ComboBox2.Value
        .Cells(no_ligne, 2) = ComboBox5.Value
        .Cells(no_ligne, 3) = ComboBox1.Value
        .Cells(no_ligne, 4) = ComboBox4.Value
        .Cells(no_ligne, 5) = ComboBox3.Value
        .Cells(no_ligne, 8) = Format(Now, "hh:mm")
        .Cells(no_ligne, 9) = CDate(DTPicker1.Value)
      End With
   
        Application.EnableEvents = False
        MsgBox ("la ligne a été ajoutée avec succés")
        Application.EnableEvents = True

       For i = 1 to 5
              Controls("ComboBox" & i) = ""
       Next i
End Sub
 
Dernière édition:

TheProdigy

XLDnaute Impliqué
Bonsoir adil, pierrejean, le Forum :)

Met tb() en entête du formulaire, ensuite copie ce code

VB:
Private Sub ComboBox6_Click()
  Set p = Sheets("parametres")
  Set mondico = CreateObject("Scripting.Dictionary")
  tb = p.Range("a2:b" & p.Range("a" & Rows.Count).End(xlUp).Row).Value
  For i = LBound(tb, 1) To UBound(tb, 1)
  If tb(i, 1) = Me.ComboBox6 Then mondico(tb(i, 2)) = ""
  Next i
  temp = mondico.keys
  Call Tri(temp, LBound(temp), UBound(temp))
  Me.ComboBox7.List = temp
End Sub

Change aussi tous les [A 65 000] par Range("a" & Rows.Count) ou autre colonne.

J'ai un doute avec ceci
With Sheets("Annuaire")
no_ligne = .Cells(Rows.Count, 1).End(xlUp).Row + 1
'Insertion des valeurs sur la feuille
.Cells(no_ligne, 8) = Now 'Colonne H - Mais le texte c'est Achat?? o_O
.Cells(no_ligne, 9) = CDate(DTPicker1.Value)
End With

VB:
Private Sub CommandButton_Ajouter_Click()
Dim no_ligne As Long, civilite As String
  
      With Sheets("Annuaire")
        no_ligne = .Cells(Rows.Count, 1).End(xlUp).Row + 1
        'Insertion des valeurs sur la feuille
        .Cells(no_ligne, 1) = ComboBox2.Value
        .Cells(no_ligne, 2) = ComboBox5.Value
        .Cells(no_ligne, 3) = ComboBox1.Value
        .Cells(no_ligne, 4) = ComboBox4.Value
        .Cells(no_ligne, 5) = ComboBox3.Value
        .Cells(no_ligne, 8) = Format(Now, "hh:mm")
        .Cells(no_ligne, 9) = CDate(DTPicker1.Value)
      End With
  
        Application.EnableEvents = False
        MsgBox ("la ligne a été ajoutée avec succés")
        Application.EnableEvents = True

       For i = 1 to 5
              Controls("ComboBox" & i) = ""
       Next i
End Sub
Bonjour tb () en tête veux-tu dire name du formulaire?
 

Lone-wolf

XLDnaute Barbatruc
Bonjour adil

Quand tu te sera décidé une bonne fois pour toute. Là je passe la main.
Une fois je veux si, une fois je veux ça, maintenant je veux ça.

Et qu'est-ce que ça à avoir le titre du message avec ce que tu demande?!
 
Dernière édition:

TheProdigy

XLDnaute Impliqué
Bonjour @Lone-wolf , bonjour le forum,

C'est juste dans le cadre de l’apprentissage, de la formation et de l’échange inter membres et non pas dans le cadre de la solution car la solution a été trouvée par @pierrejean que je remercie. J'ai essayé depuis le 07 Mai mais je n'y suis pas arrivé.
Et qu'est-ce que ça à avoir le titre du message avec ce que tu demande?!
Je me rappelle vous m'avez dit de ne pas créer des sous-fil de discussion voilà pourquoi "Une liste en cascade mais avec des option buttons" c'est la relation avec le sujet, au lieu de copier le ficher et créer une nouvelle discussion j'ai exécuté ton conseil et continué sur la discussion.

Merci @Lone-wolf Merci @pierrejean merci le forum

Bonne journée!
 

Discussions similaires

Réponses
8
Affichages
411

Statistiques des forums

Discussions
312 090
Messages
2 085 210
Membres
102 820
dernier inscrit
SIEG68