Remplir une ListView depuis un tableau

Le
Apitos
Bonjour à tous,

J'aimerais bien remplir une ListView depuis un tableau de donnés.

Colonne 1 = "Code Article" : Colonne 2 = "PrixU"

Et voilà le tableau :

'
Private Sub UserForm_Initialize()
Dim tablo(2, 1)
Dim i As Integer
tablo(0, 0) = "Beurre": tablo(0, 1) = Format("300", "# ##0.00")
tablo(1, 0) = "Bare": tablo(1, 1) = Format("1500", "# ##0.00")
tablo(2, 0) = "Bureau": tablo(2, 1) = Format("7543300", "#
##0.00")
.
End Sub
'

Merci.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #17721401
bonjour Apitos,

Private Sub UserForm_Initialize()
Dim tablo(2, 1)
Dim i As Integer
tablo(0, 0) = "Beurre": tablo(0, 1) = Format("300", "# ##0.00")
tablo(1, 0) = "Bare": tablo(1, 1) = Format("1500", "# ##0.00")
tablo(2, 0) = "Bureau": tablo(2, 1) = Format("7543300", "###0.00")

With ListView1
.View = lvwReport
.ColumnHeaders.Add , , "Code Article"
.ColumnHeaders.Add , , "PrixU"
For i = LBound(tablo) To UBound(tablo)
With .ListItems.Add
.Text = tablo(i, 0)
With .ListSubItems.Add
.Text = tablo(i, 1)
End With
End With
Next
End With
End Sub

isabelle

Apitos a écrit :
Bonjour à tous,

J'aimerais bien remplir une ListView depuis un tableau de donnés.

Colonne 1 = "Code Article" : Colonne 2 = "PrixU"

Et voilà le tableau :

'---------------------------------
Private Sub UserForm_Initialize()
Dim tablo(2, 1)
Dim i As Integer
tablo(0, 0) = "Beurre": tablo(0, 1) = Format("300", "# ##0.00")
tablo(1, 0) = "Bare": tablo(1, 1) = Format("1500", "# ##0.00")
tablo(2, 0) = "Bureau": tablo(2, 1) = Format("7543300", "#
##0.00")
....
End Sub
'------------------------------------

Merci.


Apitos
Le #17721511
Bonjour Isabelle,

Entre temps j'ai essayé ce code.

Ca marche mais il reste quelques retouches à apporter.

NB : Une petite modification : Le tableau est à transposer ! ;)

'----------------------------------
Private Sub UserForm_Initialize()
Dim tablo(1, 3)
Dim i As Integer, tCol As Integer, R As Integer
Titre = Array("Code Articles", "PrixU")
tablo(0, 1) = "Beurre": tablo(1, 1) = Format("300", "# ##0.00")
tablo(0, 2) = "Bare": tablo(1, 2) = Format("1500", "# ##0.00")
tablo(0, 3) = "Bureau": tablo(1, 3) = Format("7543300", "#
##0.00")
'----- Remplissage ListView------------------------
With ListView1
'Définit le nombre de colonnes et Entêtes
With .ColumnHeaders
'Supprime les anciens entêtes
.Clear
'Ajoute 2 colonnes en spécifiant le nom de l'entête
'et la largeur des colonnes
' MsgBox "Ubound(tablo) = " & UBound(tablo)
For tCol = 0 To UBound(tablo) '-- 02 colonnes
' MsgBox "Titre(" & tCol & ") = " & Titre(tCol)
.Add , , Titre(tCol), 40 'ListView1.ColumnHeaders.
Next tCol
End With
'-- Quadrillage à vrai
.Gridlines = True
'-- Remplissage de la ListView
R = 1
' MsgBox "Ubound(tablo) = " & UBound(tablo)
Do Until R > UBound(tablo, 2)
'-- Données
.ListItems.Add , , tablo(0, R)
For iCnt = 1 To UBound(tablo) '2 colonnes
.ListItems(R).ListSubItems.Add , , tablo(iCnt, 1)
.ListItems(R).ListSubItems.Add , , tablo(iCnt, 2)
Next iCnt
R = R + 1
Loop
.View = lvwReport 'affichage en mode "Détails"
.Gridlines = True 'affichage d'un quadrillage
.FullRowSelect = True 'Sélection des lignes complètes
.CheckBoxes = True 'J'en ai besoin pour faire une seule
selection afin d'inserer la ligne sélectionnée dans le feuille
End With
End SubMerci
'----------------------------------

Merci.
Publicité
Poster une réponse
Anonyme