Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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

AurélienP

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

Bonjour flyonets44,

merci pour le fichier, je vais voir comment je peux l'adapter à mon cas.

bonne journée

AurélienP
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…