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 :

Application.run pour plusieurs fichiers [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 87
    Par défaut Application.run pour plusieurs fichiers
    Bonsoir le forum,
    j'ai besoin d'aide sur les Applications.run
    en faite je souhaite activer des macros dans differents fichier en utilisant Application.run mais voici cette application fonctionne pour le 1er fichier mais pas le second
    merci d'avance de votre aide
    VELO 1222
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub Macro4()
     
    'Application.ScreenUpdating = False
     
    Application.Run "'C:\Documents and Settings\FRNTO2M\Bureau\TARIFICATION\2TT.xls'!Ouvrir_copier_coller"
    Application.Run "'C:\Documents and Settings\FRNTO2M\Bureau\TARIFICATION\2TT.xls'!Macro2"
    Application.Run "'C:\Documents and Settings\FRNTO2M\Bureau\TARIFICATION\TT.xls'!Ouvrir_copier_coller"
    Application.Run "'C:\Documents and Settings\FRNTO2M\Bureau\TARIFICATION\TT.xls'!Macro2"
     
    'Application.ScreenUpdating = True
     
    End Sub

  2. #2
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Bonjour,

    Je viens de faire le test et je peux enchainer sans problème les macros.

    Pour fonctionner je te rappelle que le classeur cible doit être ouvert, sinon ça ne fonctionne pas (c'est clairement indiqué dans l'aide)

    Si ton fichier est bien ouvert, ajoute une gestion d'erreur, une de tes macros doit planter ?

  3. #3
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Citation Envoyé par aalex_38 Voir le message
    Bonjour,

    Pour fonctionner je te rappelle que le classeur cible doit être ouvert, sinon ça ne fonctionne pas (c'est clairement indiqué dans l'aide)
    Sous quelle version ?, dans l'aide 2007, ce n'est pas le cas et ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub OuvreToi()
    Application.Run "'D:\to destroy Range-Exos.xlsm'!Encadre"
    Application.Run "'D:\to destroy Range-Exos.xlsm'!Ménage"
    Application.Run "'D:\select change sur toutes les feuilles.xls'!TestDivers"
     
    End Sub
    fonctionne sans souci, mélange xlsm et xls, classeurs fermés qu'il ouvre au moment voulu.


    Rajout : Attention de ne pas confondre le domaine d''Application :
    - l'objet Range (qui je pense concerne les feuilles de macros xl4, donc à oublier sauf pour mémoire).

    - l'objet Application

    D'où l'intérêt pour VELO1222 de préciser sa version (entre balises) et le message d'erreur qu'il obtient....

    cordialement,

    Didier

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 87
    Par défaut
    bonjour didier, bonjour le forum,
    Pour repondre a ta question je suis sous excel 2003
    je viens de refaire un test en essayant d'ouvrir 3 fichiers dans ce dossier et de lancer les macros mais c'est toujours que le 1er ficheir de la programmation qui s'execute et les autres non
    merci de votre aide
    cdt
    tony
    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
    Sub Macro4()
     
    'Application.ScreenUpdating = False
     
    Application.Run "'C:\Documents and Settings\FRNTO2M\Bureau\TARIFICATION\TT.xls'!Ouvrir_copier_coller"
    Application.Run "'C:\Documents and Settings\FRNTO2M\Bureau\TARIFICATION\TT.xls'!Macro2"
     
    Application.Run "'C:\Documents and Settings\FRNTO2M\Bureau\TARIFICATION\TTT.xls'!Ouvrir_copier_coller"
    Application.Run "'C:\Documents and Settings\FRNTO2M\Bureau\TARIFICATION\TTT.xls'!Macro2"
     
    Application.Run "'C:\Documents and Settings\FRNTO2M\Bureau\TARIFICATION\TTTT.xls'!Ouvrir_copier_coller"
    Application.Run "'C:\Documents and Settings\FRNTO2M\Bureau\TARIFICATION\TTTT.xls'!Macro2"
     
    'Application.ScreenUpdating = True
     
    End Sub

  5. #5
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Bonjour à tous,

    un conseil VELO1222 fais du debogage pas à pas pour voir ou ce situe le problème.

    Ormonth, merci pour ces précisions et effectivement cela fonctionne aussi pour des classeurs fermés, ils s'ouvrent à l'execution, j'ai été trompé par ce message dans l'aide VBA :

    Cet exemple montre comment appeler la fonction macro My_Func_Sum, qui est définie dans la feuille macro MyCustom.xlm (cette dernière doit être ouverte). Dans cet exemple, la fonction accepte deux arguments numériques, 1 et 5.

    Edit : mon poste est également installé avec Excel 2003

  6. #6
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Citation Envoyé par aalex_38 Voir le message

    j'ai été trompé par ce message dans l'aide VBA :
    Cet exemple montre comment appeler la fonction macro My_Func_Sum, qui est définie dans la feuille macro MyCustom.xlm (cette dernière doit être ouverte). Dans cet exemple, la fonction accepte deux arguments numériques, 1 et 5.
    C'est justement la partie qui fait référence à l'objet Range, la terminaison .xlm de l'exemple indique bien une feuille de macro XL4 (ou antérieure).

    cordialement,

    Didier

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Macro unique pour plusieurs fichiers excel
    Par jackbauer972 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 09/07/2007, 13h41
  2. 1 ctl pour plusieurs fichier, plusieurs tables
    Par cathou9999 dans le forum Administration
    Réponses: 3
    Dernier message: 10/05/2007, 16h18
  3. Browse pour plusieur fichiers
    Par Mirna dans le forum MFC
    Réponses: 2
    Dernier message: 18/10/2006, 22h45
  4. [VBA-E]une macro unique pour plusieurs fichiers excel
    Par fanchic29 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/04/2006, 16h20
  5. Autorun pour plusieurs fichiers en simultané sur clé USB
    Par princebaal dans le forum Windows
    Réponses: 1
    Dernier message: 06/10/2005, 13h35

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