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

Excel Discussion :

fusionner 2 fichiers EXCEL contenant chacun des macros et conserver ces macros


Sujet :

Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Octobre 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2015
    Messages : 13
    Points : 6
    Points
    6
    Par défaut fusionner 2 fichiers EXCEL contenant chacun des macros et conserver ces macros
    Bonjour,

    Tout est dit dans l'intitulé de la discussion, mais je détaille quand même :
    j'ai actuellement un fichier t juridik.xls constitué, d'une seule feuille/onglet nommé "jur"
    j'ai par ailleurs un gros fichier, bourré de macros, une des macros de ce 2ème fichier permet d'incorporer la feuille "jur" à l'ensemble des onglets qu'il comporte

    tout se passe très bien, sauf qu'il m'est venu la bête idée d'améliorer mon premier fichier pour l'agrémenter de jolies macros qui, pour l'une d'elles, permet de masquer des lignes ou de les afficher, en fonction d'une liste déroulante qui fait apparaître utilement un "oui" pour les afficher, et un "non" pour les masquer
    il va sans dire que tout fonctionne à merveille quand je sollicite mes macros du fichier, je dirais indépendant t juridik.xls, ne comportant que le seul onglet "jur"
    précision qui n'a sans doute pas d'importance, mais je l'écris quand même : la macro est logée dans le Thisworbook de Microsoft Excel Objets dans le worbook et s'exécute à chaque changement dans la feuille grâce à sa, je ne sais pas comment on dit, "catégorisation" en sheetchange

    du coup, je me retrouve bien avec 2 fichiers, contenant chacun des macros.

    me mettant sur mon gros fichiers, j'actionne ma "macro d'incorporation" de l'onglet "jur", lequel est bien incorporé... sans les macros du fichier t juridik.xls

    mon souhait : que ma feuille "jur", issue de mon premier fichier s'intègre à mon plus gros fichier, et ... ne perde pas ses macros propres


    je crains fort que ce ne soit malheureusement pas possible ! Qu'en pensez-vous ?

    Merci d'avance pour un avis

  2. #2
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    si ce que tu souhaites, c'est que lors de la copie d'une feuille vers un autre classeur, l'ensemble des macros écrites dans son module soient également copiée, oui c'est possible en manipulant les objets VBE, on peut naviguer dans les modules, lignes de codes (et autres) d'un projet

    voici un lien expliquant comment manipuler les macros ... par macro : http://silkyroad.developpez.com/VBA/VisualBasicEditor/


    essaye d'expliquer un peu plus la partie où tu dis que tu dois copier la feuille jur dans chaque onglet ... j'ai pas vraiment compris pour ma part.

  3. #3
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 954
    Points : 9 284
    Points
    9 284
    Par défaut
    hello,
    voici un exemple en VBA qui copie les macros du module ThisWorkbook du classeur actif à la fin du module ThisWorkbook d'un autre classeur.
    Pour pouvoir utiliser ce code il faut faire référence à Microsoft Visual Basic for Applications Extensibility 5.3 -> Outils/Références -> cocher la ligne Microsoft Visual Basic for Applications Extensibility 5.3

    voici la macro :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub CopieVBA()
    Dim src As CodeModule, dest As CodeModule
    Set src = ThisWorkbook.VBProject.VBComponents("ThisWorkbook").CodeModule
    Workbooks.Open "f:\temp\ClasseurDest.xlsm"
    Set dest = Workbooks("ClasseurDest.xlsm").VBProject.VBComponents("ThisWorkbook") _
        .CodeModule
    'Insère les macros du module ThisWorkbook du classeur actif à la fin du module
    'ThisWorkbook du classeur de destination
    dest.InsertLines dest.CountOfLines + 1, src.Lines(1, src.CountOfLines)
    End Sub
    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/01/2015, 18h15
  2. Réponses: 14
    Dernier message: 23/06/2014, 16h13
  3. [XL-2010] Lancement fichier Excel contenant une macro
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/11/2012, 16h41
  4. Réponses: 4
    Dernier message: 07/06/2012, 00h29
  5. [VBA-E]Eviter d'updater un fichiers excel qui a des liens
    Par tinose dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/05/2006, 19h27

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