Comment exécuter plusieurs macros d'accès à partir d'une application ou d'une autre base de données

    L'exemple ci-dessous montre comment nous pouvons exécuter un accès à une macro à partir d'une autre application ou base de données en utilisant leAutomatisation OLE.

    Nous effectuons les étapes suivantes :

    • créons deux bases de données Access en les appelant TestDB.mdb et TestDB2.mdb
    • dans la première base de données TestDB.mdb, nous créons une macro qui l'appelle TestMsg avec l'action suivante : "Test Macro" Fenêtre de message
    • dans la deuxième base de données TestDB2.mdb, nous créons une autre macro appelée TestMsg avec l'action suivante : Fenêtre de message : "Test Macro2"
    • dans l'application que vous utiliserez, choisissez parmi les références Bibliothèque d'objets Microsoft Access (à partir de la version 8.0)

    Comment exécuter plusieurs macros d'accès à partir d'une application ou d'une autre base de données



    Créons le Sub suivant :

    Sub RunMacroX() Dim objACC As New Access.Application
    Set objACC = GetObject("C:TestDB.mdb") 'ouvrir la première base de données objACC.DoCmd.RunMacro ("TestMsg") 'exécuter la macro objACC.Quit Set objACC = GetObject("C:TestDB2.mdb") 'ouvrir la deuxième base de données objACC.DoCmd.RunMacro ("TestMsg") 'exécuter la macro objACC.Quit Définir objACC = Rien
    End Sub

     

    Si vous obtenez une erreur comme celle-ci : "L'action ExécuterMacro a été annulée. Erreur 2501"Ou"L'action ExécuterMacro a été annulée" .


    L'erreur est due à l'existence d'une déclaration Exit Macro ou Stop Macro. Si vous constatez que, même en présence de l'erreur, la macro a terminé son activité, vous pouvez très bien utiliser leOn Error Resume Next au début de Sub.


    Testé sur Office 2003 et Office 2007.


    Deprecated: Automatic conversion of false to array is deprecated in /home/soultricks.com/htdocs/php/post.php on line 606
    ajouter un commentaire de Comment exécuter plusieurs macros d'accès à partir d'une application ou d'une autre base de données
    Commentaire envoyé avec succès ! Nous l'examinerons dans les prochaines heures.