salut,
je suis en train de faire une macro pour ouvrir un fichier csv et le copier dans une feuille.
le fichier csv contient du texte dans la colonne A. Exemple :
Cellule A1 : 2.52340,48.84300,"DA_30_1762"
Cellule A2 : 2.69607,48.94449,"DA_30_1763"
Cellule A3 : 5.77050,45.06898,"DA_30_1764"
Cellule A4 : -4.24664,48.48694,"DA_30_1765"
C'est ce que j'obtiens en double cliquant sur le fichier, dans excel.
Avec la macro que j'utilise :
Dim Chemin As String, Fichier As String, Temp As String
Dim NumLigne As Long, NumCol As Integer
Dim FF As Integer, I As Integer
Chemin = "D:\test\"
Fichier = Dir(Chemin & "*.csv")
NumLigne = ActiveCell.Row
NumCol = ActiveCell.Column
With ActiveSheet
FF = FreeFile
Do While Fichier <> ""
Open Chemin & Fichier For Input As #FF
Do While Not EOF(FF)
Line Input #FF, Temp
Table = Split(Temp, vbTab)
.Cells(NumLigne, NumCol + I) = Table(I)
NumLigne = NumLigne + 1
Loop
Close #FF
Fichier = Dir
Loop
End With
j'ai une erreur car quand la macro fait le split, le split ne voit pas plusieurs ligne mais une seule ligne comme cela :
2.52340,48.84300,"DA_30_1762"#2.69607,48.94449,"DA_30_1763"#5.77050,45.06898,"DA_30_1764"#-4.24664,48.48694,"DA_30_1765"
avec à la place de # un petit carré.
Comment est ce possible car comme dit plus haut, quand je double clique sur le fichier csv, excel m'affiche bien plusieurs lignes...
Apparemment, il y a un problème de format avec ce fichier csv. (sur d'autres fichiers csv qui proviennent d'autre part, la macro marche...)
Comment faire pour résoudre ce problème, svp ?
merci !