Bonjour à tous, je réoriente ma requête ici en espérant que je sois sur le bon chemin. Voilà, j'ai réalisé un tri d'un tableau Excel en additionnant certain valeur dans le cas d'un doublon. Jusqu'à là je m'en sors mais je voudrais afficher le résultat dans une listView et je me rends compte que tout le résultat est affiché sur une colonne de la listView. Pouvez-vous m'aider à remplir toute les colonnes de ma listView. (Comment définir mon "Z" en tant que tableau pour l'afficher dans la Listview?)
ListView sans doublon et ajout
Application.ScreenUpdating = False
Set F1 = Sheets("Feuil3")
a = F1.Range("A1").CurrentRegion.Value
Dim c()
ReDim c(1 To UBound(a, 1), 1 To UBound(a, 2))
ligne = 1
Set mondico = CreateObject("Scripting.Dictionary")
For i = 1 To UBound(a)
temp = a(i, 1) & a(i, 2)
If Not mondico.exists(temp) Then
mondico.Add temp, ""
For k 1 To UBound(a, 2) - 1: c(ligne, k) a(i, k): Next k
c(ligne, k) = c(ligne, k) + a(i, k)
ligne = ligne + 1
Else
p = Application.Match(temp, mondico.keys, 0)
col = UBound(a, 2) - 1
c(p, col) = c(p, col) + a(i, col)
End If
Next
Feuil3.[A1].CurrentRegion.ClearContents
'Feuil3.[A1].Resize(mondico.Count, UBound(a, 2)) = c
With UserForm1.ListView1
With .ColumnHeaders
.Clear
.Add , , "Réference", 50, lvwColumnLeft
.Add , , "Nom produit", 140, lvwColumnLeft
.Add , , "Quantité", 48, lvwColumnLeft
.Add , , "Unité ", 53, lvwColumnLeft
End With
ligne = 1
.View = lvwReport
.FullRowSelect = True
.Gridlines = True
.AllowColumnReorder = True
For Each Z In c
.ListItems.Add , , Z
'.ListItems(ligne).ListSubItems.Add , , Z.Offset(, 1)
'.ListItems(ligne).ListSubItems.Add , , Z.Offset(, 3)
'.ListItems(ligne).ListSubItems.Add , , Z.Offset(, 2)
'ligne = ligne + 1
Next Z
End With
Merci à vous