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 :

Problème d'interférence entre plusieurs macros au démarrage d'un fichier Excel


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Août 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Problème d'interférence entre plusieurs macros au démarrage d'un fichier Excel
    Bonjour, voici mon problème.

    Je travaille actuellement en VBA sur un fichier Excel, et j'ai une procédure "Workbook_Open" qui va lancer deux fichiers xla en tant que macros complémentaires (AddIns.Add...), qui me servent, entre autres, a rajouter des barres d'outils que j'ai créées. Mon problème vient du fait que j'ai aussi une procédure "Workbook_SheetActivate" qui exécute une macro présente dans un des fichiers xla (Application.Run "machin.xla!nom_macro").
    Cela fonctionne très bien, sauf au démarrage, apparemment le fichier xla n'est pas encore chargé lorsque la procédure "Workbook_SheetActivate" s'exécute, et j'obtiens un message d'erreur d'exécution 1004
    'machin.xla' introuvable. Vérifiez l'orthographe du nom du classeur et la validité de l'emplacement.
    Comment remédier à ce problème proprement, sans "On Error Resume Next" et autres méthodes barbares.

    Merci d'avance pour vos réponses.

  2. #2
    Membre régulier
    Inscrit en
    Août 2010
    Messages
    168
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 168
    Points : 123
    Points
    123
    Par défaut
    Hmm tu as dis pas de methode barbare mais bon tu pourais pensé à ,boucler sur la ligne où l'erreur se produit temps que le numero d'erreur est égale à 1004.

    Apres si c'est un petit peu trop barbare pour toi je sais pas comment faire d'autre...

  3. #3
    Futur Membre du Club
    Inscrit en
    Août 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    J'ai testé ton idée, bien qu'elle implique un "On Error Resume Next" mais ne t'inquiètes pas, je ne suis pas complètement borné, j'y suis simplement réticent, car les erreurs passées sous silence peuvent provoquer d'autres erreurs, visibles ou non, et en trouver la cause peut devenir un casse-tête inextricable. Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    On Error Resume Next
    Do
    Application.Run "menubar.xla!set_db"
    Loop While Err.Number = 1004
    End Sub
    J'obtiens une boucle infinie, avant que les xla ne soient chargés

Discussions similaires

  1. Problème de signature entre plusieurs jar
    Par s.poublan dans le forum Forms
    Réponses: 2
    Dernier message: 25/06/2009, 11h42
  2. Réponses: 6
    Dernier message: 30/10/2008, 12h40
  3. Problème de Jointure entre plusieurs tables
    Par Stouille89 dans le forum JDBC
    Réponses: 12
    Dernier message: 11/12/2007, 14h16
  4. [VBA-E]Problème de comparaison entre plusieurs colonnes
    Par JeanMikael dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 09/07/2007, 17h29
  5. Problème de cloisonnement entre plusieurs instances
    Par nostub dans le forum Langage
    Réponses: 2
    Dernier message: 05/12/2006, 18h00

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