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

  • Initiateur de la discussion Initiateur de la discussion AurélienP
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

A

AurélienP

Guest
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 modification par un modérateur:
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
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

F
Réponses
8
Affichages
3 K
F
P
  • Résolu(e)
Réponses
2
Affichages
1 K
Pdedieu
P
F
Réponses
2
Affichages
2 K
F
D
Réponses
4
Affichages
1 K
Retour