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 :

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
j'attends votre aide avec impatience!!!
merci d'avance