Excel Downloads
Forum

Précédent   Excel Downloads Forums > Archives > Forum Excel Downloads - Archives

Advertisement

 
 
LinkBack Outils de la discussion
Vieux 06/02/2005, 22h04   #1 (permalink)
Jacques
Guest
 
Messages: n/a
Par défaut listbox en cascade

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
Fichiers attachés
Type de fichier : zip listboxencascade.zip (10,1 Ko, 15 affichages)
 
ANNONCES
Vieux 06/02/2005, 22h54   #2 (permalink)
ChTi'160
Guest
 
Messages: n/a
Par défaut Re: listbox en cascade

Salut"Jacques"
une possibilité de faire en pièce jointe
les listes se mettent à jour
à améliorer sûrement
A+++
Jean Marie
Fichiers attachés
Type de fichier : zip listboxencascadeV1.zip (12,7 Ko, 20 affichages)
 
Vieux 07/02/2005, 20h02   #3 (permalink)
Jacques
Guest
 
Messages: n/a
Par défaut Re: listbox en cascade

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
 
Vieux 07/02/2005, 20h31   #4 (permalink)
ChTi'160
Guest
 
Messages: n/a
Par défaut Re: listbox en cascade

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
 
Vieux 07/02/2005, 20h39   #5 (permalink)
Jacques
Guest
 
Messages: n/a
Par défaut Re: listbox en cascade

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
 
Vieux 09/02/2005, 04h06   #6 (permalink)
zano
Guest
 
Messages: n/a
Par défaut Re: listbox en cascade

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)
Fichiers attachés
Type de fichier : zip lbox_cascade.zip (13,4 Ko, 26 affichages)
 
Vieux 09/02/2005, 04h09   #7 (permalink)
zano
Guest
 
Messages: n/a
Par défaut Re: listbox en cascade

sélectionnes ...
 
Vieux 14/02/2005, 22h40   #8 (permalink)
Jacques
Guest
 
Messages: n/a
Par défaut Re: listbox en cascade

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
 
Vieux 17/02/2005, 00h34   #9 (permalink)
zano
Guest
 
Messages: n/a
Par défaut Re: listbox en cascade

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 ...
Fichiers attachés
Type de fichier : zip lbox_cascade.zip (17,0 Ko, 19 affichages)
 
Vieux 17/02/2005, 14h18   #10 (permalink)
Jacques
Guest
 
Messages: n/a
Par défaut Re: listbox en cascade

Salut Zano,

Merci d'avoir passé un peu de temps sur mon problème, j'essai ça dès ce soir.

@ plus

Jacques
 
Vieux 18/02/2005, 16h26   #11 (permalink)
ChTi'160
Guest
 
Messages: n/a
Par défaut Re: listbox en cascade

Salut"Jacques" et "zano"
une autre version tu peux ajouter des colonnes et des lignes
A+++
Jean Marie
Fichiers attachés
Type de fichier : zip listboxencascadeV2.zip (13,2 Ko, 37 affichages)
 
Vieux 18/02/2005, 18h52   #12 (permalink)
Jacques
Guest
 
Messages: n/a
Par défaut Re: listbox en cascade

Bonjour Zano, Jean Marie,

Merci à tous les 2, vous m'enlever une grosse épine du pied et mettez fin à 1 semaine de galère.

Encore merci

@ plus

Jacques
 
ANNONCES
 

Liens sociaux

Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +2. Il est actuellement 04h34.


(C) 2006 Excel Downloads