Declaration listbox
c
Bonsoir
dans usf j'ai une combobox (combobox1)label Batiment colonne b dans le classeur, elle alimente 29 textbox tout fonctionne bien
je viens de rajouter une listbox (listbox1) je souhaite qu'en fonction du choix combo elle soit aussi alimenter aussi avec les valeurs colonne AF
mais j'ai besoin coup de main pour declarer tout ca
si quelqun peut me mettre sur la voie
merci
Bonjour, la colonne AF est vide
c
Eh bien dans votre code où il y a l'alimentation des textbox vous pouvez rajouter
ListBox1.AddItem .Range("af" & I)également rajouter :
ListBox1.Clearjuste en dessous de If ComboBox1.Value <> "" Then
ou alors copier le code modifié ci-dessous
Private Sub ComboBox1_Change()
With Sheets("Centrale")
derligne = .Range("B" & Rows.Count).End(xlUp).Row
For I = 2 To derligne
If ComboBox1.Value <> "" Then
ListBox1.Clear
If .Range("B" & I) = ComboBox1.Value Then
TextBox1 = .Range("C" & I)
TextBox2 = .Range("D" & I)
TextBox3 = .Range("E" & I)
TextBox4 = .Range("F" & I)
TextBox5 = .Range("G" & I)
TextBox6 = .Range("H" & I)
TextBox7 = .Range("I" & I)
TextBox8 = .Range("J" & I)
TextBox9 = .Range("K" & I)
TextBox10 = .Range("L" & I)
TextBox11 = .Range("M" & I)
TextBox12 = .Range("N" & I)
TextBox13 = .Range("O" & I)
TextBox14 = .Range("P" & I)
TextBox15 = .Range("Q" & I)
TextBox16 = .Range("R" & I)
TextBox17 = .Range("S" & I)
TextBox18 = .Range("T" & I)
TextBox19 = .Range("U" & I)
TextBox20 = .Range("V" & I)
TextBox21 = .Range("W" & I)
TextBox22 = .Range("X" & I)
TextBox23 = .Range("Y" & I)
TextBox24 = .Range("Z" & I)
TextBox25 = .Range("AA" & I)
TextBox26 = .Range("AB" & I)
TextBox27 = .Range("AC" & I)
TextBox28 = .Range("AD" & I)
TextBox29 = .Range("AE" & I)
ListBox1.AddItem .Range("af" & I)
I = derligne
End If
Else
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
TextBox4 = ""
TextBox5 = ""
TextBox6 = ""
TextBox7 = ""
TextBox8 = ""
TextBox9 = ""
TextBox10 = ""
TextBox11 = ""
TextBox12 = ""
TextBox13 = ""
TextBox14 = ""
TextBox15 = ""
TextBox16 = ""
TextBox17 = ""
TextBox18 = ""
TextBox19 = ""
TextBox20 = ""
TextBox21 = ""
TextBox22 = ""
TextBox23 = ""
TextBox24 = ""
TextBox25 = ""
TextBox26 = ""
TextBox27 = ""
TextBox28 = ""
TextBox29 = ""
End If
Next I
End With
End SubD'ailleurs que l'on peut réduire mais il faut tester si toutes les informations sont bonnes (pour ma part l'userform dépasse la hauteur de mon écran)
Private Sub ComboBox1_Change()
Dim zz%
With Sheets("Centrale")
derligne = .Range("B" & Rows.Count).End(xlUp).Row
For I = 2 To derligne
If ComboBox1.Value <> "" Then
ListBox1.Clear
If .Range("B" & I) = ComboBox1.Value Then
For zz = 1 To 29
Controls("TextBox" & zz) = .Cells(I + 2, zz)
Next
ListBox1.AddItem .Range("af" & I)
I = derligne
End If
Else
listbox1.clear
For zz = 1 To 29
Controls("TextBox" & zz) = ""
Next
End If
Next I
End With
End Sub