bonjour,
Je ne suis pas un grand expert en macro mais j'ai réussi tant bien que mal a rapatrier dans un même fichier les donnée d'une multitude de tableaux (tableau tous identique dans leur structure)
voici la ligne de code:
Sheets("Base de Données").Select
Rows("2:1048576").Select
Selection.Delete Shift:=xlUp
' 1er fournisseur
Sheets("Base de Données").Select
Range("A2").Select
Workbooks.Open Filename:= _
"C:\...\[nomfournisseur1].xlsx" _
, UpdateLinks:=0
Sheets("CA").Select
Range("a2:l" & Range("l1048576").End(xlUp).Row).Select
Selection.Copy
Windows("Synthèse").Activate
Selection.Insert Shift:=xlDown
Cells.Select
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Application.CommandBars("Task Pane").Visible = False
Windows("[nomfournisseur1].xlsx").Activate
ActiveWindow.Close SaveChanges:=False
Sheets("Base de Données").Select
' fournisseur suivant
Range("A2").Select
Workbooks.Open Filename:= _
"C:\...\[nomfournisseur2].xlsx" _
, UpdateLinks:=0
Sheets("CA").Select
Range("a2:l" & Range("l1048576").End(xlUp).Row).Select
Selection.Copy
Windows("Synthèse").Activate
Selection.Insert Shift:=xlDown
Cells.Select
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Application.CommandBars("Task Pane").Visible = False
Windows("[nomfournisseur2].xlsx").Activate
ActiveWindow.Close SaveChanges:=False
Sheets("Base de Données").Select
(Et ça continue comme ça jusqu'à dernier fournisseurs (environ 60)...)
Voici donc mon interrogation ... est il possible de simplifier en récupérant automatiquement les données sans ouvrir les classeurs fournisseurs ?
Et si tout les fichier sont dans le même répertoire, est on obligé de définir la procédure et le chemin d'accès pour chaque fournisseur ? ou existe t'il un moyen plus simple ??
Merci pour votre aide 😉
Je ne suis pas un grand expert en macro mais j'ai réussi tant bien que mal a rapatrier dans un même fichier les donnée d'une multitude de tableaux (tableau tous identique dans leur structure)
voici la ligne de code:
Sheets("Base de Données").Select
Rows("2:1048576").Select
Selection.Delete Shift:=xlUp
' 1er fournisseur
Sheets("Base de Données").Select
Range("A2").Select
Workbooks.Open Filename:= _
"C:\...\[nomfournisseur1].xlsx" _
, UpdateLinks:=0
Sheets("CA").Select
Range("a2:l" & Range("l1048576").End(xlUp).Row).Select
Selection.Copy
Windows("Synthèse").Activate
Selection.Insert Shift:=xlDown
Cells.Select
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Application.CommandBars("Task Pane").Visible = False
Windows("[nomfournisseur1].xlsx").Activate
ActiveWindow.Close SaveChanges:=False
Sheets("Base de Données").Select
' fournisseur suivant
Range("A2").Select
Workbooks.Open Filename:= _
"C:\...\[nomfournisseur2].xlsx" _
, UpdateLinks:=0
Sheets("CA").Select
Range("a2:l" & Range("l1048576").End(xlUp).Row).Select
Selection.Copy
Windows("Synthèse").Activate
Selection.Insert Shift:=xlDown
Cells.Select
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Application.CommandBars("Task Pane").Visible = False
Windows("[nomfournisseur2].xlsx").Activate
ActiveWindow.Close SaveChanges:=False
Sheets("Base de Données").Select
(Et ça continue comme ça jusqu'à dernier fournisseurs (environ 60)...)
Voici donc mon interrogation ... est il possible de simplifier en récupérant automatiquement les données sans ouvrir les classeurs fournisseurs ?
Et si tout les fichier sont dans le même répertoire, est on obligé de définir la procédure et le chemin d'accès pour chaque fournisseur ? ou existe t'il un moyen plus simple ??
Merci pour votre aide 😉