plus de 10 colonnes dans une listebox sans utiliser la propriété rowsource

patricktoulon

XLDnaute Barbatruc
bonjour a tous
je l'ai donné sur le forum excel mais je met cette astuce ici aussi

l'avantage de la propriété rowsource d'une listbox c'est que l'on peut avoir plus de 10 colonnes
le désavantage c'est que la liste est immodifiable et elle nous ajoute les entete
je vous propose les avantages sans les inconvénients
voila comment on peut remplir et exploiter une listbox (plus de 10 colonnes)
l'astuce est assez simple
un petit exemple
VB:
Private Sub UserForm_Activate()

    With ListBox1
        .ColumnCount = 15'on dimensionne les colonnes
        '--------------------------------------------------
        ' !!!!!!C EST CA L ASTUCE!!!!!!!!!on la remplie avec une ligne de cellule(15 colonne) et on la vide!!!!!!!!!
        .List = Range("A1").Resize(1, .ColumnCount).Value: .Clear
        '--------------------------------------------------

        'elle est maintenant dimensionnée a 15 colonne et valide pour 15 colonnes  MÊME!!!!!! si elle est vide !!!!!!!!!!!!

        'maintenant on (((peut)))!!! la remplir normalement avec 2 boucles ligne/colonnes )imbriquées

        For i = 0 To 10
            .AddItem ""
            For c = 0 To 14
                .List(i, c) = "Ligne" & i + 1 & " Col" & c + 1
            Next
        Next
    End With
End Sub
et voila le beure et l'argent du beurre ;)
demo
demo3.gif



a noter que pour le dimensionnement provisoire on peut passer par une variable tableau aussi c'est la même chose
VB:
Private Sub UserForm_Activate()
 Dim i As Long, C As Long,tablo
    With ListBox1
        .ColumnCount = 15
        ReDim tablo(1, 15)
        .List = tablo: .Clear


        For i = 0 To 9
            .AddItem ""
            For C = 0 To 14
                .List(i, C) = "Ligne" & i + 1 & " Col" & C + 1
            Next
        Next
    End With

End Sub
 
Dernière édition:

Discussions similaires

Réponses
4
Affichages
191

Membres actuellement en ligne

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 811
dernier inscrit
caroline29260