Limite colonne du listbox

Bonjour le forum
J’ai un petit problème avec ma listbox car je dois faire une recherche dans un tableau qui a 38 colonnes et je cherche à afficher tous les colonnes dans ma listebox mais je me trouve limité à 10 colonnes seulement
Voici mon programme :

Private Sub CommandButton4_Click()

Application.ScreenUpdating = False
Set f = ActiveSheet
Me.ListBox1.Clear

With ListBox1
.ColumnCount = 38
.ColumnWidths = "1;50;100;50;20;50;50;50;50;50;50;50;50;50;50;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20;20"
.RowSource = ""
End With

Set plage = f.[b1].CurrentRegion
Set plage = ActiveSheet.Range("b1:b3000")
Set c = plage.Find(ComboBox9.Value, , , xlPart)
If Not c Is Nothing Then
i = 0
premier = c.Address
Do
Me.ListBox1.AddItem
Me.ListBox1.List(i, 0) = c.Offset(0, -1)
Me.ListBox1.List(i, 1) = c.Offset(0, 1)
Me.ListBox1.List(i, 2) = c.Offset(0, 2)
Me.ListBox1.List(i, 3) = c.Offset(0, 4)
Me.ListBox1.List(i, 4) = c.Offset(0, 5)
Me.ListBox1.List(i, 5) = c.Offset(0, 6)
Me.ListBox1.List(i, 6) = c.Offset(0, 7)
Me.ListBox1.List(i, 7) = c.Offset(0, 8)
Me.ListBox1.List(i, 8) = c.Offset(0, 9)
Me.ListBox1.List(i, 9) = c.Offset(0, 10)
Me.ListBox1.List(i, 10) = c.Offset(0, 11)
Me.ListBox1.List(i, 11) = c.Offset(0, 12)
Me.ListBox1.List(i, 12) = c.Offset(0, 13)
Me.ListBox1.List(i, 13) = c.Offset(0, 14)
Me.ListBox1.List(i, 14) = c.Offset(0, 15)
Me.ListBox1.List(i, 15) = c.Offset(0, 16)
Me.ListBox1.List(i, 16) = c.Offset(0, 17)
Me.ListBox1.List(i, 17) = c.Offset(0, 18)
Me.ListBox1.List(i, 18) = c.Offset(0, 19)
Me.ListBox1.List(i, 19) = c.Offset(0, 20)
Me.ListBox1.List(i, 20) = c.Offset(0, 21)
Me.ListBox1.List(i, 21) = c.Offset(0, 22)
Me.ListBox1.List(i, 22) = c.Offset(0, 23)
Me.ListBox1.List(i, 23) = c.Offset(0, 24)
Me.ListBox1.List(i, 24) = c.Offset(0, 25)
Me.ListBox1.List(i, 25) = c.Offset(0, 26)
Me.ListBox1.List(i, 26) = c.Offset(0, 27)
Me.ListBox1.List(i, 27) = c.Offset(0, 28)
Me.ListBox1.List(i, 28) = c.Offset(0, 29)
Me.ListBox1.List(i, 29) = c.Offset(0, 30)
Me.ListBox1.List(i, 30) = c.Offset(0, 31)
Me.ListBox1.List(i, 31) = c.Offset(0, 32)
Me.ListBox1.List(i, 32) = c.Offset(0, 33)
Me.ListBox1.List(i, 33) = c.Offset(0, 34)
Me.ListBox1.List(i, 34) = c.Offset(0, 35)
Me.ListBox1.List(i, 35) = c.Offset(0, 36)
Me.ListBox1.List(i, 36) = c.Offset(0, 37)
Me.ListBox1.List(i, 37) = c.Offset(0, 38)
i = i + 1
Set c = plage.FindNext(c)
Loop While Not c Is Nothing And c.Address <> premier
End If

End sub

Merci encore

2 réponses

  1. Bonjour,
    C'est l'instruction AddItem qui lmite a 10
    En mettant vos donnees dans un tableau pas de probleme voir ci-dessous:
        Plage = Worksheets("feuil2").Range("A1:AL22")        '38 colonnes
        ListBox1.List() = Plage
    
    0
    1. bonjour
      merci pour votre aide .... pour la recherche c'est bon mais j'ai remarquer que ma listbox affiche après la résultat de la recherche tous le tableau de données du page ???!!!!!
      savez vous pourquoi?
      0
    2. salut,
      j'ai trouver le problème ...
      j'ai changer

      Plage = Worksheets("feuil2").Range("A1:AL22")

      par

      Plage = Worksheets("feuil2").Range("A5:AL5")

      merci beaucoup pour votre aide c'est gentil
      0