listbox demeurent vides

  • Initiateur de la discussion François
  • Date de début
F

François

Guest
Bonjour le forum,

J'ai trois combobox et lorsque le choix dans mon 3e est est fait, mais listbox devraient être remplis avec les informations mais cela ne fonctionne pas. Pourtant lorsque j'utilise le même code pour les listbox avec seulement un combobox tout est OK.

Voici le code pour test :

Private Sub ComboBox2_Change()
Dim c As Range, k As Long
Dim tabtemp As Variant
Dim L As Integer

Set myr3 = myr1.Offset(0, 2)
Do While th3.Count > 0
th3.Remove 1
Loop
On Error Resume Next
For Each c In myr3.Cells
If c.Offset(0, -2) & c.Offset(0, -1) = ComboBox1 & ComboBox2 Then
th3.Add c, CStr(c)
End If
Next
ComboBox3.Clear
For k = 1 To th3.Count
ComboBox3.AddItem th3(k)
Next k

With Worksheets('feuil1')
L = .Range('k15000:').End(xlUp).Row
tabtemp = .Range('A2:k' & L).Value
End With

ListBox1.Clear
ListBox2.Clear
ListBox3.Clear
ListBox4.Clear
ListBox5.Clear
ListBox6.Clear
ListBox7.Clear
ListBox8.Clear

For L = 1 To UBound(tabtemp, 1)
If tabtemp(L, 1) = CLng(ComboBox3.Value) Then
ListBox1.AddItem tabtemp(L, 2)
ListBox2.AddItem tabtemp(L, 3)
ListBox3.AddItem tabtemp(L, 4)
ListBox4.AddItem tabtemp(L, 5)
ListBox5.AddItem tabtemp(L, 6)
ListBox6.AddItem tabtemp(L, 7)
ListBox7.AddItem tabtemp(L, 8)
ListBox8.AddItem tabtemp(L, 9)
End If
Next L

End Sub

Où est mon erreur ?

Merci
 

Hervé

XLDnaute Barbatruc
Bonjour francois, le forum

Très difficile de répondre sans pièce jointe, et j'ai pas le temp de créer tout les controles.

je pense que tu devrais revalidé les gestionnaire d'erreurs après le remplissage de la collection, comme ceci :

On Error Resume Next
For Each c In myr3.Cells
If c.Offset(0, -2) & c.Offset(0, -1) = ComboBox1 & ComboBox2 Then
th3.Add c, CStr(c)
End If
Next

on error goto 0

Ceci aurait pour effet de faire buggé ton code et ainsi te permettre de trouver la faille.

je pense que ca va buggé notament ici :

L = .Range('k15000:').End(xlUp).Row

sinon joint nous un fichier ca sera quand meme plus simple.

salut
 

Hervé

XLDnaute Barbatruc
re c'est toujours moi

Une autre piste francois,

je vois que ta collection th3 n'est pas déclaré en tete de la macro. l'a tu déclarée public en début de module ?

sinon :

dim th3 as collection

set th3 = new collection

a plus

salut
 
F

François

Guest
Bonsoir le forum, Hervé,

Tel que demandé voici le fichier joint.

Merci [file name=Pour_le_forum.zip size=50418]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Pour_le_forum.zip[/file]
 

Pièces jointes

  • Pour_le_forum.zip
    49.2 KB · Affichages: 20

Hervé

XLDnaute Barbatruc
re francois

:)


J'ai quelques difficultés à comprendre ton cheminement.

tu remplis ta combobox1 avec la colonne A sans doublons,
puis eu regard de la sélection de la combobox1 tu remplis la combobox2 toujours sans doublons.

Par contre une fois que tu as sélectionné un item dans la combobox2 tu veux que la combobox3 se remplit ET que les listbox soient renseignées suivant un choix qui n'est pas encore fait :eek:

Suis-je clair ?

Il te faut donc isoler cette partie de la macro dans un évenement click de la combobox 3

Private Sub ComboBox3_Click()
Dim l As Integer

ListBox1.Clear
ListBox2.Clear
ListBox3.Clear
ListBox4.Clear
ListBox5.Clear
ListBox6.Clear
ListBox7.Clear
ListBox8.Clear
'If ComboBox3.Value = '' Then Exit Sub

For l = 1 To UBound(tabtemp, 1)
If tabtemp(l, 1) = ComboBox3.Value Then
ListBox1.AddItem tabtemp(l, 2)
ListBox2.AddItem tabtemp(l, 3)
ListBox3.AddItem tabtemp(l, 4)
ListBox4.AddItem tabtemp(l, 5)
ListBox5.AddItem tabtemp(l, 6)
ListBox6.AddItem tabtemp(l, 7)
ListBox7.AddItem tabtemp(l, 8)
ListBox8.AddItem tabtemp(l, 9)
End If
Next l

End Sub

De plus je comprend pas pourquoi, francois, tu t'évertu à remplir 3 combobox pour ensuite ne tester que la derniere ?
If tabtemp(l, 1) = ComboBox3.Value Then

Merci de m'apporter tes commentaires et tes explications.

salut
 

Hervé

XLDnaute Barbatruc
rebonsoir francois, le forum

en pièce jointe, ma vision de ton tableau.

Si ceci peut t'aider.

salut
[file name=forum2_20050831223443.zip size=47973]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/forum2_20050831223443.zip[/file]
 

Pièces jointes

  • forum2_20050831223443.zip
    46.8 KB · Affichages: 34

Discussions similaires

Réponses
4
Affichages
217
Réponses
15
Affichages
503

Statistiques des forums

Discussions
312 330
Messages
2 087 341
Membres
103 524
dernier inscrit
Smile1813