Combiner plusieurs base de données en une seule.

Fermé
coteev - Modifié par crapoulou le 21/11/2016 à 19:49
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 - 21 nov. 2016 à 21:02
Bonjour,
J'ai un dossier avec plusieurs fichiers excel, don't un master qui a pour but de rassembler l'informations de l'ensemble des autres fichiers excel. Chaque fichier a des onglets identiques, mais avec des informations de produit différentes. j'aimerais combiner l'information de tout mes fichiers dans le master. Les informations de l'onglet que j'appel DATABASE dans les fichiers rassembler dans l'onglet Data dans mon master. J'ai commencer une macro comme suit

Sub copyDatafrommultiplesheets()
Dim FolderPath As String, Filepath As String, Filename As String

FolderPath = "C:\Users\coteev1\Desktop\Master test\"

Filepath = FolderPath & "*.xls*"

Filenames = Dir(Filepath)

Dim lastrow As Long, lastcolumn As Long
Do While Filename <> ""

Workbooks.Open (FolderPath & Filename)

ActiveSheet = "DATABASE"

lastrow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
lascolumn = ActiveSheet.Cells(1, Column.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:=Worksheets("Data").Range(Cells(erow, 1), Cells(erow, 300))

Filename = Dir

Loop
Application.DisplayAlerts = True

End Sub


J'aimerais copier coller l'information de tous les onglets DATABASE de tous mes fichiers presents dans folder "Master test" de A2 à IG41 tous un en dessous de l'autre.
ma macro ne fonctionne pas quelqu'un peu m'aider SVP

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.

1 réponse

yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476
21 nov. 2016 à 21:02
Important : ajoute "option explicit" au début de ton code.
0