Combinaison de données en un seul fichier

Bonjour et bonne année à tous (il reste encore 2 jours pour le souhaiter).

J'ai un petit problème qui sera surement peut pour beaucoup d'entre vous.

Je dois combiner un grand nombre de données issues de fichiers Excel en un même fichier. A savoir que ces fichiers se trouvent tous dans le même dossier et que les données à récupérer se situent également aux même emplacement dans chaque fichier.

A l'aide de différentes recherches j'ai pu écrire le code ci-dessous mais malheureusement cela ne fonctionne pas et la seule action que ce dernier réalise est de m'ajouter une feuille dans le classeur.

'

Sub CombineMultipleExcelFiles()
  Dim SummarySheet As Worksheet
  Dim SourceSheet As Worksheet
  Dim FolderPath As String
  Dim FileName As String
  Dim LastRow As Long
  Dim LastColumn As Long

  'Créer une nouvelle feuille de résumé
  Set SummarySheet = ThisWorkbook.Sheets.Add

  'Définir le chemin du dossier contenant les fichiers Excel à combiner
  FolderPath = "C:Users\loris.cadau\OneDrive - Eramet SA\Entreprise\TTh\Dressage\Données presse\Ligne 22 Armement_Nexter Systems\Tube 155\"

  'Obtenir la liste de tous les fichiers Excel dans le dossier
  FileName = Dir(FolderPath & "*.xlsx")

  'Boucle à travers chaque fichier Excel dans le dossier
  Do While FileName <> ""
    'Ouvrir le fichier Excel actuel
    Workbooks.Open (FolderPath & FileName)

    'Définir la feuille source à la première feuille du fichier ouvert
    Set SourceSheet = Workbooks(FileName).Sheets(1)

    'Trouver la dernière ligne et la dernière colonne de la feuille source
    LastRow = SourceSheet.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
    LastColumn = SourceSheet.Cells.Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column

    'Copier toutes les données de la feuille source dans la feuille de résumé
    SourceSheet.Range(SourceSheet.Cells(1, 1), SourceSheet.Cells(LastRow, LastColumn)).Copy _
      Destination:=SummarySheet.Cells(SummarySheet.Cells(SummarySheet.Rows.Count, 1).End(xlUp).Row + 1, 1)

    'Fermer le fichier Excel actuel
    Workbooks(FileName).Close

    'Obtenir le nom du prochain fichier Excel dans le dossier
    FileName = Dir()
  Loop

  'Afficher un message pour indiquer que le processus est terminé
  MsgBox "Les fichiers Excel ont été combinés avec succès!", vbInformation
End Sub

Je vous avoue que je bloque un peu, pour information voici la structure des fichiers sources (également disponible en PJ) :

image

Merci par avance pour votre aide.

Cordialement, Loris.

Bonjour

On voit la source (du moins une) mais pas la cible. Tu récupères ce qui en bleu seulement ?

Bonjour

Il est possible de vérifier à chaque étape si les variables sont bien remplies

par exemple

1) dernière la ligne

Workbooks.Open (FolderPath & FileName)

Ajouter une ligne

debug.Print " Dossier= " & FolderPath & " filename=" & Filename

2) Derriere les lignes

Lastrow= ...
LastColumn= ...

Ajouter la ligne

debug.Print "Ligne=" & LastRow & " colonne=" & LastColumn & " Destination = " & SummarySheet.Cells(SummarySheet.Rows.Count, 1).End(xlUp).Row

Observer la fenetre "Exécution"

Rechercher des sujets similaires à "combinaison donnees seul fichier"