Importer plusieurs centaines de fichiers .Text

Résolu
vic -  
 vic -
Bonjour,

Je voudrais savoir si il était possible avec Eexcel 2003 d'importer plusieurs centaines de fichiers .text dans un seul fichier Excel ( les un à la suite des autres). Sans avoir à
les faire un par un.

Merci bien .

Vic

13 réponses

  1. Maurice
     
    Re
    voila sur 2 feuilles

    http://cjoint.com/?3IEplOl7MEX

    je pense que pour moi ses fini

    A+

    Maurice
    1
  2. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Bonjour,

    C'est faisable par une macro.
    Encore faut-il savoir comment sont les fichiers texte.
    Format txt, csv, autre?
    Nombre de lignes (éventuellement colonnes) de ces fichiers?
    nombre de fichiers texte approximatif?
    0
  3. vic
     
    Bonjour,

    Merci de ta réponse rapide

    Alors il y a 170 lignes et 3 colonnes dans chaques fichiers. Ce sont des .txt. Nommés "jjmmaaaa xxxxxx.txt" Les "x" correspondent à des chiffres aléatoire ( du moins je connais pasleur signification ).

    Ils sont tous dans C:\Multispec\Tests\LDB

    Il y en a autour de 1000 je dirais.

    Merci bien !
    0
  4. Maurice
     
    Bonjour

    donne au moin un model de ton fichier TxT pour voir les separateure
    voila une macro pour faire une list des Txt

    Sub BoucleFichiersTxt()
    Dim Chemin As String, Fichier As String
    Cells.ClearContents
    Range("A1").Select
    'Définit le répertoire contenant les fichiers Txt
    Chemin = ThisWorkbook.Path & "\FicTxt"
    'Boucle sur tous les fichiers Txt du répertoire.
    Fichier = Dir(Chemin & "*.txt")
    Lig = 1
    Do While Len(Fichier) > 0
    Range("A" & Lig).Value = Chemin & "" & Fichier
    Fichier = Dir()
    Lig = Lig + 1
    Loop
    End Sub

    A+
    Maurice
    0
    1. vic
       
      Salut,

      Merci je vais tester ça.

      Voila un exemple de fichier txt
      https://www.cjoint.com/c/DIDms5s4O4d

      Merci bien

      PS: j'ai jamais fais de macro avant ni de programmation. La macro pour la boucle il faut que je l'insère à quelle niveau de ma macro pour importer ?


      Ci dessous, une macro faire à la souris pour importer le txt. Si je comprends bien, il faut que je mettes la boucle dedans ?

      Sub test()
      '
      ' test Macro
      ' Macro enregistrée le 29/09/2014 par t82phar1
      '

      '
      With ActiveSheet.QueryTables.Add(Connection:= _
      "TEXT;C:\Multispec\Tests\LDB\09292014 084717.txt", Destination:=ActiveCell)
      .Name = "09292014 084717"
      .FieldNames = True
      .RowNumbers = False
      .FillAdjacentFormulas = False
      .PreserveFormatting = True
      .RefreshOnFileOpen = False
      .RefreshStyle = xlInsertDeleteCells
      .SavePassword = False
      .SaveData = True
      .AdjustColumnWidth = True
      .RefreshPeriod = 0
      .TextFilePromptOnRefresh = False
      .TextFilePlatform = 932
      .TextFileStartRow = 1
      .TextFileParseType = xlFixedWidth
      .TextFileTextQualifier = xlTextQualifierDoubleQuote
      .TextFileConsecutiveDelimiter = False
      .TextFileTabDelimiter = True
      .TextFileSemicolonDelimiter = False
      .TextFileCommaDelimiter = False
      .TextFileSpaceDelimiter = False
      .TextFileColumnDataTypes = Array(1, 1, 1)
      .TextFileFixedColumnWidths = Array(23, 15)
      .TextFileTrailingMinusNumbers = True
      .Refresh BackgroundQuery:=False
      End With
      End Sub
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    ATTENTION :
    170 lignes par fichier txt multiplié par 1000 fichiers = 170 000 lignes.
    Excel 2003, il va falloir travailler sur au moins 3 feuilles différentes...
    0
  7. Maurice
     
    Re
    je pense que le separateur est la tabulation

    voila un fichier excel avec les macro listes des ficfier et cumul

    http://cjoint.com/?3IDmK6tu7RQ

    A+
    Maurice
    0
    1. vic
       
      Merci je teste ça demain au boulot et je te dis si ça marche.

      Encore bravo pour la rapidité des réponses. Je suis toujours impressionné !
      0
  8. vic
     
    @Maurice

    J'ai lancé lancer la macro, alors cumul text bug, avec une erreur 75, en disant qu'il y a un problème de chemin d'accés. Le débogage surligne " Open NomFichier For Input As #1"

    J'ai strictement aucune idée de ce qu'il faut corriger...
    0
  9. Maurice
     
    Bonjour

    il faut changer chemin ex:

    ' Chemin = ThisWorkbook.Path & "\FicTxt\"

    Chemin = "C:\Multispec\Tests\LDB\"

    la je ne peux pas le faire ses a toi de le faire

    A+
    Maurice
    0
    1. vic
       
      Comme toujours merci de ta réponse.
      Même après avoir changé le chemin, il fait toujours erreur 75 et le débogage surligne " Open NomFichier For Input As #1"

      Que dois-je faire ?

      J'ai également remarqué que la feuille est marqué Feuil1 et non Cumul ( qui est son nom dans le fichier excel)
      0
  10. Maurice
     
    re

    en premier lancer liste Txt

    pour les onglet se decompose en 2
    ex:liste = non de l'onglet
    & Feuil1 = CodeName

    A+
    Maurice
    0
    1. vic
       
      Ok,
      Sauf que quand je lance liste rien ne se passe. Pas de bug, juste rien.
      0
  11. vic
     
    Je viens de remarquer le dossier LDB est en lecture seule es ce que ça peut changer quelques chose.

    NomFichier=vide ( le commentaire quand je mets le curseur dessus). Il ne faut pas que je mette LDB ? ou le nom de mon premier fichier txt ?

    Es ce que je dois replacer Feuil1 par Cumul ?

    Merci bien
    @+ Vic
    0
  12. vic
     
    Voilà le fichier contenant tous mes fichiers textes: http://cjoint.com/?DIEmlJpKPew

    L'idée c'est de tous les mettres sur une ( ou plusieurs feuilles excel) pour pouvoir travailler dessus.

    Je suis un peu perdu.

    @Marcus, je comprends pas comment faire fonctionner ta macro. Qu'es ce que je dois changer d'autre en plus du chemin d'accés ?

    Bien cordialement

    Vic
    0
  13. Maurice
     
    bonjour

    Voila une modif pour le chemin

    http://cjoint.com/?3IEmDOliRUl

    Lancer la macro 1 & 2 & 3

    A+

    Maurice
    0
  14. vic
     
    @Maurice.

    Ca marche super bien. Merci beaucoup pour le coup de main et le temps consacré. Franchement s'est niquel.

    Bien cordialement

    @+
    0