Concaténer

Bonjour,
Je vous explique j'ai un fichier excel avec plusieurs feuilles je voudrai concaténer le tout dans une seul feuille comment je pourrai faire cela en VBA ?
Ensuite je voudrai concaténer le tout dans un seul fichier Excel.
Un exemple : fichier excel 2001 : 5 feuilles
2002 : 4feuilles
..........
......
2014 : 3 feuille

Je voudrai avoir un seul fichier excel qui regroupe les données de chaque fichier
Je ne sais pas si je suis assez claire.
Merci d'avance
Bonne journée.

5 réponses

  1. Les colonnes sont elles les mêmes dans toutes les feuilles?

    Aussi, si ce n'est pas une opération répétitive, c'est à dire quelques chose que vous faites une fois par an, je vous conseille de le faire manuellement.

    C'est aussi simple que ça.

    Bon courage!
    0
    1. Contributeur
      Bonjour.

      Attention au vocabulaire employé : "Concaténer, c'est mettre bout à bout deux chaînes de caractères de manière à en former une troisième."

      Là, il s'agit de regrouper des données dans un fichier unique.
      Encore faudrait-il qu'on sache comment sont disposées ces données (emplacements de départ et d'arrivée) ...

      C'est bien, la retraite ! Surtout aux Antilles ... :-)
      ☻ Raymond ♂
      0
      1. Bonjour le fil,

        Pourquoi moins 1, ou est l'anomalie dans la réponse, je rétablie l'équité
        Mike-31
        0
      2. Contributeur
        Merci, Mike.
        0
    2. Bonjour

      essayez avec consolider des données

      http://moncherwatson.wordpress.com/2012/10/17/excel-consolidez-vos-donnees-1-de-3/
      0
      1. Bonjour,
        Merci pour vos réponses, alors oui tous mes fichiers ont le même nombre de colonne et ils sont structurés de la même manière également.
        Oui manuellement c'est possible mais juste super long et pas pratique et on peut faire des erreurs facilement (comme oublié de copier une feuille.......)
        Oui j'avoue le terme concaténé n'était pas le bon pour mon problème
        Alors les fichiers sont dans des dossiers différent je vous donne un exemple
        J'ai des dossiers pour chaque année et à l'intérieure de chaque dossier j'ai 12 fichiers excel un fichier pour chaque mois et pour chaque mois j'ai 4 à 5 feuilles (représente le nombre de semaine pour chaque mois)
        je vais essayé avec consolider des données.
        Bonne journée
        0
        1. Bonjour,

          J'ai un problème en rapport avec la question de kira_luffy . J'ai un dossier contenant plusieurs fichiers .txt. Les noms de ces fichiers sont :

          Out_c8_gv_2000_50_a00
          Out_c8_gv_2000_50_a01
          Out_c8_gv_2000_50_a02
          Out_c8_gv_2000_100_a00
          Out_c8_gv_2000_100_a01
          Out_c8_gv_2000_100_a02
          Out_c8_gv_2000_200_a00
          Out_c8_gv_2000_200_a01
          Out_c8_gv_2000_200_a02

          Les fichiers sont composés d'un même nombre de colonnes(6) et de lignes(548). Je souhaite copier les données de chaque fichier et les mettre les uns en dessous des autres dans l'ordre précédemment cité. J'ai essayé plusieurs macro mais elles ne copient pas les données dans l'ordre précédemment cité ( ordre pourtant visible depuis l'explorateur windows).

          Les codes que j'ai essayé :

          MACRO 1
          Sub recup()
          Range("A1").Select 'sélectionner la cellule de début
          Chemin = "Z:\UserData\Measure\test\testcomplet\"
          fichier = Dir(Chemin & "*.txt") ' Premier fichier
          Do While fichier <> ""
          Workbooks.Open Filename:=Chemin & fichier
          Range("A1:K3").Copy
          ThisWorkbook.Activate
          ActiveSheet.Paste
          Windows(fichier).Activate
          Application.CutCopyMode = False
          ActiveWorkbook.Close savechanges:=False
          ThisWorkbook.Activate
          Range("A65536").End(xlUp).Offset(1, 0).Select
          fichier = Dir ' Fichier suivant
          Loop
          End Sub

          MACRO 2
          Sub Macro5()
          Dim principal As ThisWorkbook
          Dim repertoire As String, fichier$
          Application.ScreenUpdating = False
          Set principal = ThisWorkbook
          repertoire = "Z:\UserData\Measure\test\testcomplet\"
          fichier = Dir(repertoire & "*.txt")
          Do While fichier <> ""
          Workbooks.Open (repertoire & fichier)
          ActiveSheet.UsedRange.Copy Destination:=principal.Sheets(1).Range("a" & Rows.Count).End(xlUp).Offset(1)
          ActiveWorkbook.Close
          fichier = Dir
          Loop
          End Sub

          Je vous remercie par avance de vos réponses

          Nicolas
          0