Bonjour à tous,
Je veux utiliser un listview qui se charge à partir d'un fichier externe (base.xls).
Mon premier problème est une erreur de capacité. Lorsque mon fichier base comporte trop de lignes mon usf plante. J'aimerais pouvoir au moins gérer 1000 lignes.
Mon deuxième problème concernent l'ouverture de mon fichier base.xls (wb). Si je lance plusieurs fois mon usf je vois apparaitre mon fichier base au niveau de visual basic. Cela veux dire que mon fichier reste en mémoire est n'est pas refermé après chargement de la listview.
Voici le code:
Avez vous une idée à mais problèmes SVP ?
Merci
Je veux utiliser un listview qui se charge à partir d'un fichier externe (base.xls).
Mon premier problème est une erreur de capacité. Lorsque mon fichier base comporte trop de lignes mon usf plante. J'aimerais pouvoir au moins gérer 1000 lignes.
Mon deuxième problème concernent l'ouverture de mon fichier base.xls (wb). Si je lance plusieurs fois mon usf je vois apparaitre mon fichier base au niveau de visual basic. Cela veux dire que mon fichier reste en mémoire est n'est pas refermé après chargement de la listview.
Voici le code:
Je joins également les fichiers.Private Sub UserForm_Initialize()
Dim m As Byte, i As Long, x As Long, k As Byte
With ListView1
'--Entête
With .ColumnHeaders
.Clear
.Add , , "Numéro", 80 'titre de la colonne et largeur et alignement
.Add , , "Colonne 2", 50
.Add , , "Colonne 3", 200
End With
.View = lvwReport
.FullRowSelect = True
.Gridlines = True
' Chargement des données
Dim Wb As Workbook
chemin = ThisWorkbook.Path & "\Base.xls" 'ThisWorkbook.Path & "\" 'renvoie le chemin de ce répertoire
'fichier = "Base.xls" 'ici nom du fichier source
Set Wb = GetObject(chemin)
For lig = 2 To Wb.Sheets("Feuil1").Range("A65536").End(3).Row
k = k + 1
ListView1.ListItems.Add k, , Wb.Sheets("Feuil1").Cells(lig, 1)
ListView1.ListItems(k).SubItems(1) = Wb.Sheets("Feuil1").Cells(lig, 2)
ListView1.ListItems(k).SubItems(2) = Wb.Sheets("Feuil1").Cells(lig, 3)
Next
Wb.Close
End With
End Sub
Avez vous une idée à mais problèmes SVP ?
Merci