Declaration listbox

11ssi2-copie.xlsm (114.11 Ko)

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

salut Machin

OUPS PO la Bonne copie

24ssi2-copie.xlsm (115.47 Ko)

Eh bien dans votre code où il y a l'alimentation des textbox vous pouvez rajouter

 ListBox1.AddItem .Range("af" & I)

également rajouter :

ListBox1.Clear

juste 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 Sub

D'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
Rechercher des sujets similaires à "declaration listbox"