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

listbox en cascade

J

Jacques

Guest
Bonsoir à tous,

Après avoir consulté la recherche, "épluché les userforms d'@+thierry (excellent soit dit en passant) et bien d'autres, je m'en remet à vous et à vos innombrables connaissances d'excel pour me dire ou remplir la plage de cellule d'une listbox modifiable.
Je n'arrive à trouvé dans les différents fichiers que j'ai ouverts.

Tout est expliqué dans le fichier joint.

Merci de votre aide.

Jacques
 

Pièces jointes

  • listboxencascade.zip
    10.1 KB · Affichages: 85
C

ChTi'160

Guest
Salut"Jacques"
une possibilité de faire en pièce jointe
les listes se mettent à jour
à améliorer sûrement
A+++
Jean Marie
 

Pièces jointes

  • listboxencascadeV1.zip
    12.7 KB · Affichages: 126
J

Jacques

Guest
Salut ChTi'160,

Tout d'abord, merci pour ta réponse, en fait il n'existe pas de zone de saisie du genre de celles utilisées pour les listes de validation normales.
Je vais essayer d'adapter ta solution à mon problème.

@ plus

Jacques
 
C

ChTi'160

Guest
Salut"Jacques"
je ne comprends pas ce que tu veux dire
"en fait il n'existe pas de zone de saisie du genre de celles utilisées pour les listes de validation normales.
expliques nous,mets un exemple on pourra peut être t'aider ?
A+++
Jean Marie
 
J

Jacques

Guest
Re ChTi'160,

En fait dans une liste de validation, tu as une case source ou tu peux mettre au choix le nom de ta liste, éventuellement une formule ou autre, je pensais que pour les combobox c'était la même chose.
Et c'est ce que je cherchais, apparement il faut passer par un code dans le genre de celui que tu m'as proposé.
J'espère avoir répondu à ta question.

@ plus

Jacques
 
Z

zano

Guest
tout simple : intercale la ligne UserForm1.Repaint
à chaque fois


ComboBox2.RowSource = Range(Cells(2, 1), Cells(derlgn, 1)).Address
UserForm1.Repaint
ComboBox2.ListIndex = 0

Tu peux remplacer
ComboBox2.ListIndex = 0 par ComboBox2.Text = ""

pour que la 2e liste soit vide quand tu selectinne dans la 1e
(exemple ClientB)

zano le gaumais (from Belgique)
 

Pièces jointes

  • lbox_cascade.zip
    13.4 KB · Affichages: 105
  • lbox_cascade.zip
    13.4 KB · Affichages: 107
  • lbox_cascade.zip
    13.4 KB · Affichages: 108
J

Jacques

Guest
Bonsoir à tous,

Je reviens sur ce fil toujours avec le même problème, Jean marie, j'ai essayé d'adapter ta macro dans tous les sens pour que ça colle à ce que je souhaite, j'ai oublié de signaler que le nombre de client pouvait augmenter et donc que le nombre de colonne aussi.
Pour le nom des client c'est OK mais pour la suite je n'y arrive pas.
j'ai essayé le code suivant mais ça ne marche pas pourtant je ne le trouvais pas si déconnant que ça...

Private Sub ComboBox1_Change()
With UserForm1
.ComboBox2.RowSource = userform1.combobox1.value
End With
End Sub


Private Sub UserForm_initialize()
With UserForm1
.ComboBox1.RowSource = "feuil1!(D27)"
End With
End Sub

En nommant bien sur toutes mes listes par le nom du client fait en automatique par ailleurs.
Souhaitant que quelqu'un puisse m'aider, je vous souhaite à tous une très bonne st valentin.

Jacques
 
Z

zano

Guest
Private Sub ComboBox1_Change()

Dim derlgn As Integer
Dim dercol As Integer
Dim i As Integer
dercol = Feuil2.Range("A5").Value

For i = 1 To dercol
If i = ComboBox1.ListIndex Then
Feuil2.Cells(1, i + 1).FormulaR1C1 = "=DCOUNTA(Feuil1!C,1,R[1]C:R[2]C)"
derlgn = Feuil2.Cells(1, i + 1).Value
ComboBox2.RowSource = Range(Cells(2, i + 1), Cells(derlgn + 1, i + 1)).Address
UserForm1.Repaint
ComboBox2.ListIndex = 0
End If
Next

End Sub




Private Sub UserForm_Initialize()
Dim cel As Range
Dim dercol As Byte
With Worksheets("Feuil1")
dercol = .Range("IV1").End(xlToLeft).Column
For Each cel In .Range(Cells(1, 1), Cells(1, dercol))
Me.ComboBox1.AddItem cel.Value
Next
End With
Feuil2.Range("A5").Value = dercol
End Sub

en passant par des valeurs "temporaires"
un peu compliqué mais ça marche ...
 

Pièces jointes

  • lbox_cascade.zip
    17 KB · Affichages: 94
  • lbox_cascade.zip
    17 KB · Affichages: 95
  • lbox_cascade.zip
    17 KB · Affichages: 97

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…