IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Macro Transfert d'onglets vers d'autres fichiers déjà existants


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2017
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Macro Transfert d'onglets vers d'autres fichiers déjà existants
    Bonjour à tous,

    Je cherche à copier coller 5 onglets ("TNE PROJETS","TNE RUN","TNE RUN RECURRENT","TNE RUN SPE";"TNE TOTAL") de mon fichier source (fichier où se trouve la macro) vers 3 différents fichiers, nommés respectivement "Extraction frais projets", "Extraction frais run" et "Extraction frais totaux" où sont déjà créés les onglets ou je veux coller les onglets de mon fichier source.

    Ensuite j'aimerais enregistrer sous ces trois fichiers sous le même nom avec en plus la date du jour mais tout en gardant les fichiers d'origine pour re appliquer la macro. Puis que tous mes fichiers Excel se ferment.

    J'ai déjà écrit ça mais étant novice je ne parviens pas à résoudre intégralement le programme. Un grand merci pour votre aide !

    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
    23
    Sub copy()
     
    Dim projets As Workbook
    Dim run As Workbook
    Dim total As Workbook
     
    Set projets = Application.Workbooks.Open("Y:\Exercice 2017\Frais Généraux\A - Mensuel_Trimestriel\12 - Décembre\G - TNE\TNE-dossier de travail\Extraction frais projets.xls")
    Set run = Application.Workbooks.Open("Y:\Exercice 2017\Frais Généraux\A - Mensuel_Trimestriel\12 - Décembre\G - TNE\TNE-dossier de travail\Extraction frais run.xls")
    Set total = Application.Workbooks.Open("Y:\Exercice 2017\Frais Généraux\A - Mensuel_Trimestriel\12 - Décembre\G - TNE\TNE-dossier de travail\Extraction frais totaux.xls")
     
    ThisWorkbook.Worksheets("TNE PROJETS").Cells.copy.projets.Sheets("ZFIGL_ANALYSIS_PATTERN").Range ("A1")
    ThisWorkbook.Worksheets("TNE RUN").Cells.copy.run.Sheets("TNE RUN").Range ("A1")
    ThisWorkbook.Worksheets("TNE RUN RECURRENT").Cells.copy.run.Sheets("TNE RUN recurrent").Range ("A1")
    ThisWorkbook.Worksheets("TNE RUN SPE").Cells.copy.run.Sheets("TNE RUN spe").Range ("A1")
    ThisWorkbook.Worksheets("TNE TOTAL").Cells.copy.total.Sheets("ZFIGL_ANALYSIS_PATTERN").Range ("A1")
     
     
    projets.SaveAs "Y:\Exercice 2017\Frais Généraux\A - Mensuel_Trimestriel\12 - Décembre\G - TNE\TNE-dossier de travail" & "\" & "Extraction frais projets par direction & Format(date;yyyymmdd)"
    run.SaveAs "Y:\Exercice 2017\Frais Généraux\A - Mensuel_Trimestriel\12 - Décembre\G - TNE\TNE-dossier de travail" & "\" & "Extraction frais run par direction & Format(date;yyyymmdd)"
    total.SaveAs "Y:\Exercice 2017\Frais Généraux\A - Mensuel_Trimestriel\12 - Décembre\G - TNE\TNE-dossier de travail" & "\" & "Extraction frais totaux par direction & Format(date;yyyymmdd)"
     
     
    End Sub
    À votre disposition si vous voulez des précisions,

    Merci,

    Jean

  2. #2
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par Jean.Boutin Voir le message
    J'ai déjà écrit ça mais étant novice je ne parviens pas à résoudre intégralement le programme. Un grand merci pour votre aide !
    Le point après les "Copy" devrait être un espace : ce qui suit "Copy" n'est pas un membre mais un paramètre.

    Cela dit, il me semblerait plus rigoureux de commencer par détruire les trois onglets dans les fichier de destination puis de faire une copie directement des onglets plutôt que de leur contenu.
    https://msdn.microsoft.com/fr-fr/lib.../ff837404.aspx
    https://msdn.microsoft.com/fr-fr/lib.../ff837784.aspx

    Autre chose : si tu mettais tes noms de fichiers cibles dans une variable vecteur indexée par exemple ainsi Dim WBCible(3) As Workbook, ça te permettrait de faire ensuite une boucle pour ne pas avoir à dupliquer les instructions pour chaque fichier.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2017
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci beaucoup Menhir, j'ai réussi à solutionner grâce à ton aide. L'enregistrement se fait bien mais il reste cependant un problème sur l'intitulé car la date ne s'affiche pas, comme si la fonction "& Format(Date, "yyyymmdd")" ne fonctionnait pas.

    J'ai enlevé les guillemets --> projets.SaveAs "Y:\Exercice 2017\Frais Généraux\A - Mensuel_Trimestriel\12 - Décembre\G - TNE\TNE-dossier de travail" & "\" & "Extraction frais projets par direction" & Format(Date, "yyyymmdd")

    Merci

Discussions similaires

  1. [XL-2003] Changer Nom Boutton Macro et l'exporter Vers un autre Fichier Excel
    Par NONOSSONV dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 15/04/2015, 17h00
  2. Copie d'une macro vers un autre fichier
    Par Bluchy dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 26/09/2013, 20h12
  3. [XL-2003] Macro qui exporte tous les onglets vers un autre classeur
    Par LeSqual dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 26/05/2013, 17h50
  4. Transfert de données vers un autre fichier
    Par bm44000 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 14/03/2012, 09h58
  5. [XL-2007] Macro: comment importer des valeurs de fichiers Excel vers un autre fichier Excel?
    Par jerdel dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/03/2012, 16h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo