J'ai besoin d'aide sur la façon de remplir une listbox.
Enoncé du problème:
J'ai une base de données excel comme suit:
A
B
C
1
Marchandise
Type
Pays
2
VELO
FEMME
France
3
VELO
HOMME
France
4
VELO
FEMME
Allemagne
5
VELO
HOMME
Allemagne
Je souhaiterais remplir une première listbox avec les infos de la colonne C
avec une donnée supplémentaire "Tous"
Puis remplir unes seconde listbox avec les infos des cellules A2 à B5.
En fonction de la valeur sélectionnée dans la première listbox je remplirai
la seconde.
Exemple :
Si je sélectionne france j'aurais les infos des cellules A1 à B2
Si je sélectionne Allemagne j'aurais les infos des cellules A4 à B5
Si je selectionne Tous j'aurais les infos des cellules A2 à B5
Merci d'avance pour toute l'aide que vous pourrez m'apporter
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
ginette.bailleul
Je viens de me rendre compte que ma mise en page à été modifiée. Je vous remet le texte en forme/
A B C 1 MARCHANDISE TYPE PAYS 2 VELO FEMME FRANCE 3 VELO HOMME FRANCE 4 VELO FEMME ALLEMAGNE 5 VELO HOMME ALLEMAGNE
Je souhaiterais remplir une première listbox avec les infos de la colonne C avec une donnée supplémentaire "Tous" Puis remplir unes seconde listbox avec les infos des cellules A2 à B5. En fonction de la valeur sélectionnée dans la première listbox je remplirai la seconde. Exemple : Si je sélectionne france j'aurais les infos des cellules A1 à B2 Si je sélectionne Allemagne j'aurais les infos des cellules A4 à B5 Si je selectionne Tous j'aurais les infos des cellules A2 à B5
Merci d'avance pour toute l'aide que vous pourrez m'apporter
JF
Je viens de me rendre compte que ma mise en page à été modifiée.
Je vous remet le texte en forme/
A B C
1 MARCHANDISE TYPE PAYS
2 VELO FEMME FRANCE
3 VELO HOMME FRANCE
4 VELO FEMME ALLEMAGNE
5 VELO HOMME ALLEMAGNE
Je souhaiterais remplir une première listbox avec les infos de la colonne C
avec une donnée supplémentaire "Tous"
Puis remplir unes seconde listbox avec les infos des cellules A2 à B5.
En fonction de la valeur sélectionnée dans la première listbox je remplirai
la seconde.
Exemple :
Si je sélectionne france j'aurais les infos des cellules A1 à B2
Si je sélectionne Allemagne j'aurais les infos des cellules A4 à B5
Si je selectionne Tous j'aurais les infos des cellules A2 à B5
Merci d'avance pour toute l'aide que vous pourrez m'apporter
Je viens de me rendre compte que ma mise en page à été modifiée. Je vous remet le texte en forme/
A B C 1 MARCHANDISE TYPE PAYS 2 VELO FEMME FRANCE 3 VELO HOMME FRANCE 4 VELO FEMME ALLEMAGNE 5 VELO HOMME ALLEMAGNE
Je souhaiterais remplir une première listbox avec les infos de la colonne C avec une donnée supplémentaire "Tous" Puis remplir unes seconde listbox avec les infos des cellules A2 à B5. En fonction de la valeur sélectionnée dans la première listbox je remplirai la seconde. Exemple : Si je sélectionne france j'aurais les infos des cellules A1 à B2 Si je sélectionne Allemagne j'aurais les infos des cellules A4 à B5 Si je selectionne Tous j'aurais les infos des cellules A2 à B5
Merci d'avance pour toute l'aide que vous pourrez m'apporter
JF
JB
On 5 fév, 20:53, "ginette.bailleul" wrote:
Je viens de me rendre compte que ma mise en page à été modifiée. Je vous remet le texte en forme/
A B C 1 MARCHANDISE TYPE PAYS 2 VELO FEMME FRANCE 3 VELO HOMME FRANCE 4 VELO FEMME ALLEMAGNE 5 VELO HOMME ALLEMAGNE
Je souhaiterais remplir une première listbox avec les infos de la colon ne C avec une donnée supplémentaire "Tous" Puis remplir unes seconde listbox avec les infos des cellules A2 à B5. En fonction de la valeur sélectionnée dans la première listbox je remplirai la seconde. Exemple : Si je sélectionne france j'aurais les infos des cellules A1 à B2 Si je sélectionne Allemagne j'aurais les infos des cellules A4 à B5 Si je selectionne Tous j'aurais les infos des cellules A2 à B5
Merci d'avance pour toute l'aide que vous pourrez m'apporter
JF
Bonsoir,
Private Sub ComboBox1_Change() i = 0 Me.ListBox1.Clear For Each c In Range([A2], [A65000].End(xlUp)) If c.Offset(0, 2) = Me.ComboBox1 Or Me.ComboBox1 = "*" Then Me.ListBox1.AddItem Me.ListBox1.List(i, 0) = c.Value Me.ListBox1.List(i, 1) = c.Offset(0, 1).Value i = i + 1 End If Next c End Sub
Private Sub UserForm_Initialize() Set mondico = CreateObject("Scripting.Dictionary") For Each c In Range([C2], [C65000].End(xlUp)) If Not mondico.Exists(c.Value) Then mondico.Add c.Value, c.Value Next c Me.ComboBox1.AddItem "*" For Each i In mondico.items Me.ComboBox1.AddItem i Next End Sub
http://cjoint.com/?cfvSeQsLbi
Cordialement JB
On 5 fév, 20:53, "ginette.bailleul" <ginette.baill...@wanadoo.fr>
wrote:
Je viens de me rendre compte que ma mise en page à été modifiée.
Je vous remet le texte en forme/
A B C
1 MARCHANDISE TYPE PAYS
2 VELO FEMME FRANCE
3 VELO HOMME FRANCE
4 VELO FEMME ALLEMAGNE
5 VELO HOMME ALLEMAGNE
Je souhaiterais remplir une première listbox avec les infos de la colon ne C
avec une donnée supplémentaire "Tous"
Puis remplir unes seconde listbox avec les infos des cellules A2 à B5.
En fonction de la valeur sélectionnée dans la première listbox je remplirai
la seconde.
Exemple :
Si je sélectionne france j'aurais les infos des cellules A1 à B2
Si je sélectionne Allemagne j'aurais les infos des cellules A4 à B5
Si je selectionne Tous j'aurais les infos des cellules A2 à B5
Merci d'avance pour toute l'aide que vous pourrez m'apporter
JF
Bonsoir,
Private Sub ComboBox1_Change()
i = 0
Me.ListBox1.Clear
For Each c In Range([A2], [A65000].End(xlUp))
If c.Offset(0, 2) = Me.ComboBox1 Or Me.ComboBox1 = "*" Then
Me.ListBox1.AddItem
Me.ListBox1.List(i, 0) = c.Value
Me.ListBox1.List(i, 1) = c.Offset(0, 1).Value
i = i + 1
End If
Next c
End Sub
Private Sub UserForm_Initialize()
Set mondico = CreateObject("Scripting.Dictionary")
For Each c In Range([C2], [C65000].End(xlUp))
If Not mondico.Exists(c.Value) Then mondico.Add c.Value, c.Value
Next c
Me.ComboBox1.AddItem "*"
For Each i In mondico.items
Me.ComboBox1.AddItem i
Next
End Sub
Je viens de me rendre compte que ma mise en page à été modifiée. Je vous remet le texte en forme/
A B C 1 MARCHANDISE TYPE PAYS 2 VELO FEMME FRANCE 3 VELO HOMME FRANCE 4 VELO FEMME ALLEMAGNE 5 VELO HOMME ALLEMAGNE
Je souhaiterais remplir une première listbox avec les infos de la colon ne C avec une donnée supplémentaire "Tous" Puis remplir unes seconde listbox avec les infos des cellules A2 à B5. En fonction de la valeur sélectionnée dans la première listbox je remplirai la seconde. Exemple : Si je sélectionne france j'aurais les infos des cellules A1 à B2 Si je sélectionne Allemagne j'aurais les infos des cellules A4 à B5 Si je selectionne Tous j'aurais les infos des cellules A2 à B5
Merci d'avance pour toute l'aide que vous pourrez m'apporter
JF
Bonsoir,
Private Sub ComboBox1_Change() i = 0 Me.ListBox1.Clear For Each c In Range([A2], [A65000].End(xlUp)) If c.Offset(0, 2) = Me.ComboBox1 Or Me.ComboBox1 = "*" Then Me.ListBox1.AddItem Me.ListBox1.List(i, 0) = c.Value Me.ListBox1.List(i, 1) = c.Offset(0, 1).Value i = i + 1 End If Next c End Sub
Private Sub UserForm_Initialize() Set mondico = CreateObject("Scripting.Dictionary") For Each c In Range([C2], [C65000].End(xlUp)) If Not mondico.Exists(c.Value) Then mondico.Add c.Value, c.Value Next c Me.ComboBox1.AddItem "*" For Each i In mondico.items Me.ComboBox1.AddItem i Next End Sub
http://cjoint.com/?cfvSeQsLbi
Cordialement JB
ginette.bailleul
Merci beaucoup JB. Pour la clarté de tes explications et leurs justesses.
Encore mercis
JF
"JB" a écrit dans le message de news:
On 5 fév, 20:53, "ginette.bailleul" wrote:
Je viens de me rendre compte que ma mise en page à été modifiée. Je vous remet le texte en forme/
A B C 1 MARCHANDISE TYPE PAYS 2 VELO FEMME FRANCE 3 VELO HOMME FRANCE 4 VELO FEMME ALLEMAGNE 5 VELO HOMME ALLEMAGNE
Je souhaiterais remplir une première listbox avec les infos de la colonne C avec une donnée supplémentaire "Tous" Puis remplir unes seconde listbox avec les infos des cellules A2 à B5. En fonction de la valeur sélectionnée dans la première listbox je remplirai la seconde. Exemple : Si je sélectionne france j'aurais les infos des cellules A1 à B2 Si je sélectionne Allemagne j'aurais les infos des cellules A4 à B5 Si je selectionne Tous j'aurais les infos des cellules A2 à B5
Merci d'avance pour toute l'aide que vous pourrez m'apporter
JF
Bonsoir,
Private Sub ComboBox1_Change() i = 0 Me.ListBox1.Clear For Each c In Range([A2], [A65000].End(xlUp)) If c.Offset(0, 2) = Me.ComboBox1 Or Me.ComboBox1 = "*" Then Me.ListBox1.AddItem Me.ListBox1.List(i, 0) = c.Value Me.ListBox1.List(i, 1) = c.Offset(0, 1).Value i = i + 1 End If Next c End Sub
Private Sub UserForm_Initialize() Set mondico = CreateObject("Scripting.Dictionary") For Each c In Range([C2], [C65000].End(xlUp)) If Not mondico.Exists(c.Value) Then mondico.Add c.Value, c.Value Next c Me.ComboBox1.AddItem "*" For Each i In mondico.items Me.ComboBox1.AddItem i Next End Sub
http://cjoint.com/?cfvSeQsLbi
Cordialement JB
Merci beaucoup JB.
Pour la clarté de tes explications et leurs justesses.
Encore mercis
JF
"JB" <boisgontier@hotmail.com> a écrit dans le message de news:
1170708318.316389.125410@v33g2000cwv.googlegroups.com...
On 5 fév, 20:53, "ginette.bailleul" <ginette.baill...@wanadoo.fr>
wrote:
Je viens de me rendre compte que ma mise en page à été modifiée.
Je vous remet le texte en forme/
A B C
1 MARCHANDISE TYPE PAYS
2 VELO FEMME FRANCE
3 VELO HOMME FRANCE
4 VELO FEMME ALLEMAGNE
5 VELO HOMME ALLEMAGNE
Je souhaiterais remplir une première listbox avec les infos de la colonne
C
avec une donnée supplémentaire "Tous"
Puis remplir unes seconde listbox avec les infos des cellules A2 à B5.
En fonction de la valeur sélectionnée dans la première listbox je
remplirai
la seconde.
Exemple :
Si je sélectionne france j'aurais les infos des cellules A1 à B2
Si je sélectionne Allemagne j'aurais les infos des cellules A4 à B5
Si je selectionne Tous j'aurais les infos des cellules A2 à B5
Merci d'avance pour toute l'aide que vous pourrez m'apporter
JF
Bonsoir,
Private Sub ComboBox1_Change()
i = 0
Me.ListBox1.Clear
For Each c In Range([A2], [A65000].End(xlUp))
If c.Offset(0, 2) = Me.ComboBox1 Or Me.ComboBox1 = "*" Then
Me.ListBox1.AddItem
Me.ListBox1.List(i, 0) = c.Value
Me.ListBox1.List(i, 1) = c.Offset(0, 1).Value
i = i + 1
End If
Next c
End Sub
Private Sub UserForm_Initialize()
Set mondico = CreateObject("Scripting.Dictionary")
For Each c In Range([C2], [C65000].End(xlUp))
If Not mondico.Exists(c.Value) Then mondico.Add c.Value, c.Value
Next c
Me.ComboBox1.AddItem "*"
For Each i In mondico.items
Me.ComboBox1.AddItem i
Next
End Sub
Merci beaucoup JB. Pour la clarté de tes explications et leurs justesses.
Encore mercis
JF
"JB" a écrit dans le message de news:
On 5 fév, 20:53, "ginette.bailleul" wrote:
Je viens de me rendre compte que ma mise en page à été modifiée. Je vous remet le texte en forme/
A B C 1 MARCHANDISE TYPE PAYS 2 VELO FEMME FRANCE 3 VELO HOMME FRANCE 4 VELO FEMME ALLEMAGNE 5 VELO HOMME ALLEMAGNE
Je souhaiterais remplir une première listbox avec les infos de la colonne C avec une donnée supplémentaire "Tous" Puis remplir unes seconde listbox avec les infos des cellules A2 à B5. En fonction de la valeur sélectionnée dans la première listbox je remplirai la seconde. Exemple : Si je sélectionne france j'aurais les infos des cellules A1 à B2 Si je sélectionne Allemagne j'aurais les infos des cellules A4 à B5 Si je selectionne Tous j'aurais les infos des cellules A2 à B5
Merci d'avance pour toute l'aide que vous pourrez m'apporter
JF
Bonsoir,
Private Sub ComboBox1_Change() i = 0 Me.ListBox1.Clear For Each c In Range([A2], [A65000].End(xlUp)) If c.Offset(0, 2) = Me.ComboBox1 Or Me.ComboBox1 = "*" Then Me.ListBox1.AddItem Me.ListBox1.List(i, 0) = c.Value Me.ListBox1.List(i, 1) = c.Offset(0, 1).Value i = i + 1 End If Next c End Sub
Private Sub UserForm_Initialize() Set mondico = CreateObject("Scripting.Dictionary") For Each c In Range([C2], [C65000].End(xlUp)) If Not mondico.Exists(c.Value) Then mondico.Add c.Value, c.Value Next c Me.ComboBox1.AddItem "*" For Each i In mondico.items Me.ComboBox1.AddItem i Next End Sub