Razor_rws1
Messages postés31Date d'inscriptionmercredi 20 juillet 2005StatutMembreDernière intervention 4 décembre 2008
-
11 mars 2008 à 03:04
Razor_rws1
Messages postés31Date d'inscriptionmercredi 20 juillet 2005StatutMembreDernière intervention 4 décembre 2008
-
19 mars 2008 à 21:43
Salut, comme c'est indiqué dans le titre, je cherche un moyen simple et rapide d'importer les données d'un ficher CSV vers un listview.
Lunikmarty
Messages postés55Date d'inscriptionlundi 3 mars 2008StatutMembreDernière intervention17 avril 2008 11 mars 2008 à 20:01
Tu peux utiliser des tableaux dynamiques (un pour chaque colonne de ton fichier). A l'ouverture de ton fichier CSV, tu dimensionne tes tableau en fonction du nombre de ligne contenues dans le classeur, puis tu parcours les lignede ton fichier en remplissant tes tableaux, puis une petite boucle sur tes tableaux pour éditer ta listview.Je pense que c'est la solution la plus rapide... mes bon, je ne suis pas un expert en VB6.
Razor_rws1
Messages postés31Date d'inscriptionmercredi 20 juillet 2005StatutMembreDernière intervention 4 décembre 2008 12 mars 2008 à 06:18
Bon ok, j'ai trouvé comment faire, mais pour une raison que j'ignore, les données se retrouve à l'envers dans ma listview.
Voici mon code:
Public Sub LoadCSVFile(CSVFile As String, MyListview As ListView, sSeparator As String)
Dim sLine As String
MyListview.ColumnHeaders.Clear
Open CSVFile For Input As #1
i = 0
Do Until EOF(1)
Line Input #1, sLine
i = i + 1
Dim tablo() As String
Dim i2 As Integer
tablo = Split(sLine, sSeparator, , vbTextCompare)
If i = 1 Then
For i2 = 0 To UBound(tablo)
MyListview.ColumnHeaders.Add , , tablo(i2)
'MyListview.ListItems.Add i2 + 1, , tablo(i2)
Next i2
Else
MyListview.ListItems.Add 1, , tablo(0)
Dim i3 As Integer
For i3 = 1 To UBound(tablo)
MyListview.ListItems(1).SubItems(i3) = tablo(i3)
Next i3
End If
Loop
Close #1
End Sub
Quelqu'un porais m'aider à remettre de l'ordre dans ma listview svp? J'ai bien sur essayé de mettre la valeur "Sorted" à "True" mais ça ne fonctionne pas. J'aimerais égallement savoir comment éditer directement la listview lors que l'application est lancé, c'est à dire, donner la possibilité à l'utilisateur de changer certaines donneés. Je croyais qu'il y avais une simple valeur à change, du genre "EditLabel" mais je ne trouve pas.
Razor_rws1
Messages postés31Date d'inscriptionmercredi 20 juillet 2005StatutMembreDernière intervention 4 décembre 2008 14 mars 2008 à 00:55
Ok merci :). Je me demande si je ne serais pas mieux d'utiliser un control MSFlexGrid à la place d'un listview.
Mais comme je ne connais rien au MSFlexGrid, je me demandais si tu ne pourais pas m'aider en "convertisant" mon code avec le listview en code avec un MSFlexGrid.