Csv séparateur , et
V
Bonjour à tous,
je suis en train de réaliser une macro qui fait appel à un fichier csv. Ma macro fonctionne quand le séparateur de mon fichier csv est "," mais quand c'est ";" cela ne fonctionne plus.
Savez-vous pourquoi? et auriez-vous une solution?
Je vous remercie pour votre aide,
Take care,
Pauline
Bonjour,
Trouvé sur le Net ... et adapté afin d'avoir le choix entre ; et ,
Désolé, j'ai perdu la source, c'était sur excel-downloads
Tu appelles Sub Csv_Virgule()
Ou Sub Csv_PointVirgule()
selon le fichier à importer.
Option Explicit
Dim Sep As String
Sub Csv_Virgule()
Dim Fichier As Variant
ChDir ThisWorkbook.Path
Fichier = Application.GetOpenFilename("Fichier CSV (*.csv), *.csv")
If Fichier <> False Then
Sep = ","
LireCSV Fichier
End If
End Sub
Sub Csv_PointVirgule()
Dim Fichier As Variant
ChDir ThisWorkbook.Path
Fichier = Application.GetOpenFilename("Fichier CSV (*.csv), *.csv")
If Fichier <> False Then
Sep = ";"
LireCSV Fichier
End If
End Sub
Private Sub LireCSV(ByVal NomFichier As String)
Dim Chaine As String
Dim Ar() As String
Dim i As Long
Dim iRow As Long, iCol As Long
Dim NumFichier As Integer
Dim Separateur As String * 1
Separateur = Sep
Cells.Clear
Application.ScreenUpdating = False
NumFichier = FreeFile
iRow = 0
Open NomFichier For Input As #NumFichier
Do While Not EOF(NumFichier)
iCol = 1
iRow = iRow + 1
Line Input #NumFichier, Chaine
Ar = Split(Chaine, Separateur)
For i = LBound(Ar) To UBound(Ar)
Cells(iRow, iCol) = Ar(i)
iCol = iCol + 1
Next i
Loop
Close #NumFichier
Application.ScreenUpdating = True
End Sub
ric