Limite colonne du listbox

Fermé
Saddoud_walid Messages postés 41 Date d'inscription samedi 17 janvier 2015 Statut Membre Dernière intervention 6 novembre 2020 - 22 sept. 2018 à 13:07
Saddoud_walid Messages postés 41 Date d'inscription samedi 17 janvier 2015 Statut Membre Dernière intervention 6 novembre 2020 - 22 sept. 2018 à 20:19
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
A voir également:

2 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
22 sept. 2018 à 13:41
Bonjour,

Le control ListView serait plus adapté!

https://silkyroad.developpez.com/VBA/ListView/

0
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
22 sept. 2018 à 13:57
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
Saddoud_walid Messages postés 41 Date d'inscription samedi 17 janvier 2015 Statut Membre Dernière intervention 6 novembre 2020
22 sept. 2018 à 20:05
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
Saddoud_walid Messages postés 41 Date d'inscription samedi 17 janvier 2015 Statut Membre Dernière intervention 6 novembre 2020
22 sept. 2018 à 20:19
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