Lancer une macro en vb

Résolu
Bonjour à tous,

J''ai un probleme pour lancer une macro en vb sur mon code est le suivant :

Private Sub bt_val_Click()
...
DoCmd.Close
Application.Run "MacroPréparationDonnées"
End Sub

Bonne journée!

2 réponses

  1. Call NomDeLaMacro 
    

    Cela marche si la macro est dans le fichier excel actuellement en execution.
    Sinon il faut écrire
    
    Application.Run "'NomDuFichier.xls'!NomDeLaMacro"
    1. En fait je travail sur une base access appelé Base_locale j'ai un formulaire et quand je click sur validé je voudrais que s'éxécute ma macro qui est dans la mm base.
      J'ai essayé
      Application.Run "Base_locale.mdb'!MacroPréparationDonnées" ca me met l'erreur microsoft office acccess ne peut pas trouver la procedure "Base_locale.mdb'!MacroPréparationDonnées".
      Dans ce cas il faut que j'utilise call plutot ?
      1. Application.Run " ' Base_locale.mdb '! MacroPréparationDonnées" 

        Tu as oublié un apostrophe ;-) comme moi avec ma modification de ma réponse.
      2. Ca me met la mm erreur microsoft office acccess ne peut pas trouver la procedure ' 'Base_locale.mdb'!MacroPréparationDonnées'.
      3. Application.Run  " 'Base_locale.mdb'!MacroPréparationDonnées"

        A l'extérieur ce sont des guillemets et à l'intérieur des apostrophes.
      4. C'est bien ce que j'avais fait mais ca m'affiche l'erreur comme ca par contre j'ai fait DoCmd.RunMacro "MacroPréparationDonnées" et ca m'a l'air de marché. En tous cas merci beaucoup mais c'est bizarre que votre solution ne marche pas a moins que je ne soit vraiment pas doué^^