Dans cet article, nous allons apprendre à assembler les données de différents classeurs via VBA dans Microsoft Excel.

Voyons avec un simple exercice comment fusionner une feuille de calcul via VBA dans Microsoft Excel.

Nous avons 3 fichiers Excel différents. 2 fichiers sont en xlsx et un fichier en xlsm dans un dossier. Nous voulons rassembler les deux ensembles de données dans un fichier Excel pour garder à l’esprit que dans chaque donnée, les lignes et les colonnes peuvent être augmentées et diminuées, et nous ne connaissons pas non plus les noms de fichiers Excel et le nombre de fichiers dans un dossier. .

Dans cette feuille, nous voulons combiner les données: –

image 1

1 ^ st ^ Données: –

image 2

2 ^ nd ^ Données: –

image 3

3 ^ rd ^ Données: –

image 4

Maintenant, nous voulons rassembler les données dans une feuille. Nous devons suivre les étapes et le code ci-dessous: – * Appuyez sur la touche Alt + F11 pour ouvrir la page VBE pour écrire la macro.

  • Ensuite, allez à insérer l’onglet et insérez un module.

  • Écrivez le code mentionné ci-dessous dans la page.

Sous Collate_Data ()

Dim FolderpathAs String, filePath As String, Filename As String Folderpath = « E: \ Excel Tips \ New VBA topics \ HR Data \ » ‘(mentionnez le chemin du fichier)

filePath = Chemin du dossier & « xls »

Nom de fichier = Dir (chemin de fichier)

Dim LastrowAs Long, Lastcolumn As Long Do While Filename <> «  »

Workbooks.Open (Chemin du dossier et nom de fichier)

Lastrow = ActiveSheet.Cells (Rows.count, 1) .End (xlUp) .Row Lastcolumn = ActiveSheet.Cells (1, Columns.count) .End (xlToLeft) .Column Range (Cells (2, 1), Cells (Lastrow , Lastcolumn)). Copy Application.DisplayAlerts = False ActiveWorkbook.Close erow = Sheet1.Cells (Rows.count, 1) .End (xlUp) .Offset (1, 0) .Row ActiveSheet.Paste Destination: = Feuilles de calcul (« Sheet1 « ) .Range (Cellules (erow, 1), Cells (erow, 5))

Filename = Dir Loop Application.DisplayAlerts = True End Explication du sous-code: – Tout d’abord, nous allons définir la variable all que nous devons utiliser lors de la description du code. Ensuite, nous utiliserons la boucle Do While dans le code pour exécuter le programme pour tous les fichiers Excel. Ensuite, nous définirons le chemin des fichiers, puis nous définirons la dernière ligne et la dernière colonne de la feuille Excel, puis nous définirons la destination pour coller les données.

image 5

  • Pour exécuter la macro, appuyez sur la touche F5.

  • Les données des deux feuilles seront copiées et collées dans une feuille Excel.

image 6

C’est ainsi que nous pouvons rassembler les données dans une feuille à partir de différents fichiers d’Excel via VBA dans Microsoft Excel.