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 :

[VBA-E]Une macro VBA qui les controlerait toutes..


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 108
    Points : 57
    Points
    57
    Par défaut [VBA-E]Une macro VBA qui les controlerait toutes..
    Bonjour,

    Même si le titre fait un peu mégalo ,je m'interroge sur la possibilité de créer une procédure VBA qui aurait pour but de controler d'autres macro VBA.
    Je m'explique.

    Je dispose de 30 fichiers Excel ,qui gerent les données d'une classe de lycée (un fichier excel de la 2eme1, un autre de la 2eme2,un autre de la TES1,l'autre TL1...)
    Ils ont toutes la meme tete et les memes macro (exportation vers une table access pour etre plus précis).

    Ce que je voudrais faire ,c'est un fichier excel (un nouveau), avec un bouton qui lancerait une macro qui modifierait le texte sur une procedure des 30 fichiers excel.
    La ,j'ai le cas précis de changer le coefficient pour toutes les classes de 1ere et je dois changer la procedure VBA ou j'ai stocké la valeur 3 au lieu de 5.
    Si j'ai pas de solution ,je vais devoir ouvrir les 9 fichiers de seconde et les modifier a la mano... Et j'ai d'autres type de modification de ce genre ou je dois modifier les 30 macro a la main.

    Pour conclure, existe-t-il un code vba qui permettrait de :
    * ouvrir tous les fichiers excel d'un repertoire (Ca deja fait ,j'ai trouvé)
    * ouvrir les macro des 30 fichiers et modifier le :Private Sub Workbook_BeforeClose(Cancel As Boolean) ou le Private Sub Workbook_Open() dans ThisWorkbook ou bien le Sub ExporAccess() se trouvant dans Module1 ?

    Pour les modif je pensais justement mettre le code modifié dans le nouveau fichier excel,lancer la macro qui effacerait le Workbook_BeforeClose ou le Workbook_Open ou le ExporAccess et qui copierait les nouveau que j'ai crée dans le nouveau fichier excel...
    J'ai trouvé quelques éléments sur le forum ,mais rien ne parlait vraiment de remplacer le Thisworkbook (c'etait plus des modules et des procedures).


    Merci à tous de votre aide,

  2. #2
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Salut,

    Un peu de recherche sur la page cours :
    http://silkyroad.developpez.com/VBA/VisualBasicEditor/


Discussions similaires

  1. Appliquer une macro VBA à un fichier qui se regenere
    Par kirareuel dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/03/2012, 23h28
  2. [XL-2003] Appeler une macro VBA depuis une cellule
    Par Ainelle dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 29/04/2011, 23h43
  3. [XL-2003] Comment rendre une macro VBA accessible à tous les fichiers .xls
    Par Toto_le_héros38 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 08/01/2011, 21h23
  4. VBA excel Une macro qui fait souffrir ?
    Par soleilbleue dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 08/09/2007, 18h55
  5. [VBA-E] une macro qui enregistre mon fichier Excel
    Par Djohn dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 02/03/2007, 11h47

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