Bonjour à tous voilà je suis un peu nouveau en VBA alors je vous expose mon problème :
j'ai 2050 fichiers excel (classeurs) et je voudrais créer une boucle qui me prend le premier fichier, copie la troisième feuille du classeur ferme le classeur ouvert, colle cette feuille dans un nouveau classeur (que l'on appel B)... cette même opération se répète jusqu'au dernier fichier excel afin d'obtenir un classeur B avec une ou plusieurs feuilles où sont collés à la suite les données originales des feuilles 3 de chaque fichier.
Comme tous les fichiers sont dans le même répertoire, j'ai pensé à çà mais la macro ne fait que tourner et ne s'arrête jamais, et quand je l'arrête dans le fichier que je récupère (doc1.xls dans la suite) il n'y a que les résultats d'un seul fichier????
ma macro :
j'attends votre aide avec impatience!!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 Sub Macro_ouverture() ' ' Macro_ouverture Macro ' Macro enregistrée le 14/04/2008 par Utilisateur ' macro ouvrant un fichier x, sélectionnant feuille et copiant cette feuille dans un nouveau fichier Application.ScreenUpdating = False Application.DisplayAlerts = False Dim class As Workbooks Dim ws As Worksheets Dim Repertoire As String, Fichier As String Repertoire = "D:\romain\travail\Sophy_2004_origine\essai\" Fichier = Dir(Repertoire & "*.xls") Do While Fichier <> "" Set class = Workbooks.Open(Repertoire & Fichier) Worksheets(3).Activate ActiveSheet.Copy ActiveWorkbook.SaveAs FileName:="D:\romain\travail\doc1.xls" ActiveWorkbook.Close Loop End Sub
merci d'avance
Partager