problème import de plusieurs fichiers csv

jopont

XLDnaute Impliqué
Bonjour,

J'essaye d'importer en automatique plusieurs fichiers .csv avec le code ci-dessous.
-La macro Lire fonctionne lorsque que je l’exécuté avec un fichier.
Par contre lorsque je l'exécute depuis la macro Tst, pour traiter plusieurs fichiers CSV, j'ai une erreur sur le open Fichier for input : erreur chemin fichier

-Deuxième problème, lorsque j'importe les champs de date sont parfois inversés.

Comment résoudre ces problème. Merci
Code:
Sub Tst()
Dim Fichier As Variant
    Chemin = ThisWorkbook.Path & "\"
    Fichier = Dir(Chemin & "*.csv")
    Do While Fichier <> False
        Lire Fichier
    Fichier = Dir()
    Loop
End Sub

Code:
Sub Lire(ByVal Fichier 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
 
    '  Séparateur Point Virgule
    Separateur = ";"
     
    Cells.Clear
    Application.ScreenUpdating = False
    NumFichier = FreeFile
    iRow = 1
      Open Fichier For Input As #NumFichier
        Do While Not EOF(NumFichier)
            iCol = 1
            Line Input #NumFichier, Chaine
            Ar = Split(Chaine, Separateur)
            For i = LBound(Ar) To UBound(Ar)
                Ar(i) = Replace(Ar(i), "M-", "")
                Cells(iRow, iCol) = Ar(i)
                iCol = iCol + 1
            Next
             
           'Select Case Cells(iRow, 1)
                'Case Is = Cells(iRow, 2): Cells(iRow, 3) = "Ok"
                'Case Else: Cells(iRow, 3) = "Bad"
            'End Select
             
            iRow = iRow + 1
        Loop
    Close #NumFichier
     
    Application.ScreenUpdating = True
End Sub
 

Pierrot93

XLDnaute Barbatruc
Re : problème import de plusieurs fichiers csv

Bonjour,

essaye en modifiant comme suit :
Code:
Sub Tst()
Dim Fichier As Variant
    Chemin = ThisWorkbook.Path & "\"
    Fichier = Dir(Chemin & "*.csv")
    Do While Fichier <> False
        Lire Chemin & Fichier
    Fichier = Dir()
    Loop
End Sub

bon après midi
@+
 

jopont

XLDnaute Impliqué
Re : problème import de plusieurs fichiers csv

J'ai deux fichiers csv dans le répertoire. Un avec 10 lignes et un autre avec 300 lignes.
Seul le fichier de 10 lignes est récupéré.
Mes fichiers CSV ne sont pas séparés par des points virgules ils s'ouvrent sous excel en colonne.

Aussi comment résoudre le problème de date ?
merci
 

jopont

XLDnaute Impliqué
Re : problème import de plusieurs fichiers csv

Je crois que cells.clear effaçait les données.
Par contre je risque d'avoir 12 fichiers (12 mois) avec au moins 3000 lignes.
Est-ce que je risque d'être limité en nombre de ligne sur la feuille ?
Est-possible de luis dire importe sur la feuille qui correspond au mois ?
Comment résoudre mon problème de date inversée au niveau du jour et du mois ?
merci
 

Discussions similaires

Réponses
3
Affichages
381

Statistiques des forums

Discussions
312 321
Messages
2 087 266
Membres
103 502
dernier inscrit
talebafia