Regrouper le contenu de plusieurs fichiers txt dans une feuille de calcul

Présentation
Cet exemple boucle sur tous les fichiers txt d'un répertoire et regroupe les données, à la suite, dans une feuille de calcul.
La procédure utilise la propriété QueryTables.
Détails
Catégories : Les fichiers texte
Voir tous les téléchargements de l'auteur
Licence : Non renseignée
Date de mise en ligne : 29 décembre 2011




Avatar de man12345 man12345 - Futur Membre du Club https://www.developpez.com
le 01/03/2016 à 10:23
Bonjour,

Merci pour votre tuto. Je l'ai essayé, ça marche pour quelques fichiers mais pour d'autres. Lorsque je lance la macro j'ai une erreur 7 : mémoire insuffisante.
Pourrez vous m'aider SVP. Je ne comprends pas pourquoi j'ai l'erreur alors que ça m'intègre bien un certain nombre de fichiers.
Merci d'avance.
Avatar de AntoineSwiss AntoineSwiss - Nouveau Candidat au Club https://www.developpez.com
le 09/06/2016 à 17:36
Merci beaucoup pour ce tuto, c'est exactement ce sur quoi je me cassais les dents !!
Je ne m'y connais pas trop en VBA et encore moins sur la propriété QueryTables, comment faire pour extraire à partir de la seconde ligne du fichier texte?

Merci par avance de votre aide et encore merci pour cet outil très pratique.
Antoine
Avatar de patricktoulon patricktoulon - Débutant https://www.developpez.com
le 19/07/2016 à 20:34
bonsoir a tous
sino il y a ceci:
exemple:
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

Sub compil_csv()
    Dim fichier_final, fichier, x, x2, chemin
    fichier_final = "C:\Users\" & Environ("UserName") & "\Desktop\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 #x, laChaine & vbCrLf ' si vous; voulez; pas une ligne vide entre chaque fichier; supprimer le  "& vbcrlf"
        Close #x
        i = i + 1
        fichier = Dir
    Loop Until fichier = ""
    Workbooks.Open fichier_final, local:=True
End Sub

 
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.
Responsables bénévoles de la rubrique Excel : Pierre Fauconnier - Arkham46 -

Partenaire : Hébergement Web