Simplification de code (copier/coller à partir d'un fichier fermé et nom générique)

AurélienP

XLDnaute Nouveau
Bonjour à tous,
Je réalise une compilation de fichiers :
Chaque mois j’ai 5 classeurs dans un même dossier.
Chaque classeur à une racine fixe pour son nom (ex : salaire_nom de l’école_nom de la ville_jjmmaaaa_jjmmaaaa.xls)
Dans chacun de ces classeurs je réalise un copier/coller d’un onglet appelé « Suivi Congés».
Aujourd’hui j’arrive à faire ce que je veux avec l’enregistreur de macro, mais je suis obligé d’ouvrir/fermer chaque fichier du coup ça prend du temps. De plus je n’arrive pas à lui dire de chercher l’onglet synthèse dans tous les classeurs du dossier tout ça en restant fermés…

J’ai bien fouiné sur le net pour trouver un process mais j’ai pas réussi à adapter les codes.

Pourriez vous m’aider ?

le code interagit entre la feuille "suivi Congés" du classeur fermé et la feuille "Bordeaux_Synthèse" (pour Bordeaux) dans mon classeur de compilation.

Voici mon code.
Code:
Sub Consolider()
'
' récupération des données dans les différents fichiers
'

'
    Sheets("Bordeaux_Synthèse").Select            ‘pour Bordeaux’
    Cells.Select
    Selection.ClearContents
    Workbooks.Open Filename:= _
        "P:\Nom de l’école \Salaires janvier\Salaires_nomdelecole_Bordeaux_01012012_31012012_V2.xls"
    Sheets("suivi Congés").Select
    Range("A1:AK1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Windows("Consolidation Congés.xls").Activate
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Windows("Salaires_nomdelecole_Bordeaux_01012012_31012012_V2.xls").Activate
    Range("A5:AK5").Select
    Range(Selection, Selection.End(xlDown)).Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows("Consolidation Congés.xls").Activate
    Range("A5").Select
    ActiveSheet.Paste
    Windows("Salaires_nomdelecole_Bordeaux_01012012_31012012_V2.xls").Activate
    Cells(1, 1).Copy: Application.CutCopyMode = False
    ActiveWindow.Close

 
    Sheets("Lille_Synthèse").Select       'pour Lille'
    Cells.Select
    Selection.ClearContents
    Workbooks.Open Filename:= _
        "P:\EARTSUP\documents eartsup\Nouveau dossier\ Salaires_nomdelecole_Lille_01012012_31012012_V2.xls"
    Sheets("suivi Congés").Select
    Range("A1:AK1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
     Windows("Consolidation Congés.xls").Activate
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Windows("Salaires_nomdelecole_Lille_01012012_31012012_V2.xls").Activate
    Range("A5:AK5").Select
    Range(Selection, Selection.End(xlDown)).Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows("Consolidation Congés.xls").Activate
    Range("A5").Select
    ActiveSheet.Paste
    Windows("Salaires_nomdelecole_Lille_01012012_31012012_V2.xls").Activate
    Cells(1, 1).Copy: Application.CutCopyMode = False
    ActiveWindow.Close


Etc pour les 3 autres classeurs…
 
Dernière édition:

flyonets44

XLDnaute Occasionnel
Re : Simplification de code (copier/coller à partir d'un fichier fermé et nom génériq

bonjour
tu pourrais t'inspirer de ce fichier publié récemment sur le forum
Cordialement
flyonets
 

Pièces jointes

  • consolidation.xls
    42.5 KB · Affichages: 66
  • consolidation.xls
    42.5 KB · Affichages: 72
  • consolidation.xls
    42.5 KB · Affichages: 72

Discussions similaires

Statistiques des forums

Discussions
312 322
Messages
2 087 267
Membres
103 502
dernier inscrit
talebafia