Bonjour à tous,

Cela fait plusieurs années que je traîne sur le forum, y trouvant fréquemment la réponse à mes questions. Je tiens donc tout d'abord à remercier l'ensemble des membres du forum !

__________

Mon problème :

Je souhaite extraire les données de multiples fichiers csv de format ( A ; 5) avec A identiques pour l'ensemble des fichiers CSV mais variant entre 2000 et 100 000 lignes (selon la source des CSV).

J'utilise pour cela le code VBA suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Sub compil_csv()
    Dim fichier_final, fichier, x, x2, chemin
 
    fichier_final = Workbooks("Fichier d'import1").Sheets("Sheet1").Range("B3").Value & "\Fichierfinal.csv"
 
    If Dir(fichier_final) <> "" Then Kill fichier_final
 
    chemin = ThisWorkbook.Path
 
    fichier = Dir(ThisWorkbook.Path & "\*.csv")
 
    i = 0
    Do
        x = FreeFile
        Open chemin & "\" & fichier For Input As #x
        laChaine = Input(LOF(x), #x)
        Close #x
        x2 = FreeFile
        Open fichier_final For Append As #x2
        Print #x2, laChaine 
        Close #x2
        i = i + 1
        fichier = Dir
    Loop Until fichier = ""
    Workbooks.Open fichier_final, local:=True
End Sub
Ce code me permet d'extraire les données de chaque fichier csv et de les agréger dans l'onglet 1 du fichier "Fichierfinal".
L'ensemble des fichiers sont agrégés sur les mêmes colonnes (image du dessous). Si bien que le fichier final agrégé est de taille ( (A+1)*nb fichier ; 5 ). Le +1 correspondant aux lignes vides entre les jeux de données de chaque fichier.

Ci dessous ce que j'arrive à faire actuellement avec ce code :

Nom : Depart.PNG
Affichages : 411
Taille : 87,7 Ko

La première colonne des CSV correspond à la date d'une mesure et la seconde à l'heure. Ces deux colonnes sont identiques pour tous les fichiers csv.

Au lieu que les données importées se succèdent lignes après lignes comme dans l'image ci dessus. Je souhaite que les fichiers CSV importés soient rangés par colonnes comme dans l'image ci dessous :

Nom : Ou arriver.PNG
Affichages : 355
Taille : 44,7 Ko

Mes tentatives jusque là ont été d’essayer de modifier la "print area" et également de fouiller sur le forum ! sans succès.

Je m'en remets donc à votre savoir, merci par avance.

En espérant que ce sujet n'a pas été traité dans un autre thread .. !:)