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

VB.NET Discussion :

Comment appeler une procédure VBA outlook depuis VB visual studio ?


Sujet :

VB.NET

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations forums :
    Inscription : Mai 2012
    Messages : 12
    Par défaut Comment appeler une procédure VBA outlook depuis VB visual studio ?
    Salut à tous,
    J'ai programmé des procédures complexes en VBA dans outlook, et je voudrais tout simplement les lancer depuis un programme en visual basic depuis visual studio.
    J'ai plein d'exemples qui marchent pour créer une nouvelle tâche, un nouvel email, etc. Mais rien pour lancer directement une procédure VBA.

    Si je prends un petit code tout simple en VBA dans outlook:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub NomDeLOrdi()
    MsgBox ("Bonjour depuis VBA Outlook")
    End Sub
    Comment faire pour le lancer depuis visual studio, en visual basic?

    J'ai vraiment regardé partout, je n'y arrive pas.
    Je ne comprends pas où se situent ces procédures dans l'Outlook object model et comment les appeler: J'ai cru comprendre que ça passe par la classe application, mais rien ne marche.
    Je ne trouve rien qui m'aide quand j'épluche le Microsoft.Office.Interop.Outlook...

    Je promets une bière virtuelle à mon sauveur

  2. #2
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Quand j'avais Outlook, c'était encore sans VBA.

    Avec Excel, c'est Application.run(nom_de_macro)

    en théorie:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    dim appOL as new Microsoft.Office.Interop.Outlook.application
    sub macrooutlook()
        dim appOL as new Microsoft.Office.Interop.Outlook.application
        appOL.run(nom_de_macro)
    End sub
    En gros, c'est la même chose que si tu pilotais Outlook à partir d'Excel, sauf qu'il faut adapter l'appel des objets aux conventions .net
    Tu peux toujours regarder l'aide VBA d'Outlook en l'adaptant aux objets .net.

    Également, une place à connaître sur MSDN:

    https://msdn.microsoft.com/fr-fr/lib.../dn467914.aspx

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations forums :
    Inscription : Mai 2012
    Messages : 12
    Par défaut
    j'essaie mais ça ne marche pas:
    dans Microsoft.Office.Interop.Excel, dans la classe application,
    on a effectivement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Public Overridable Function Run(Optional Macro As Object, Optional Arg1 As Object, Optional Arg2 As Object, Optional Arg3 As Object, Optional Arg4 As Object, Optional Arg5 As Object, Optional Arg6 As Object, Optional Arg7 As Object, Optional Arg8 As Object, Optional Arg9 As Object, Optional Arg10 As Object, Optional Arg11 As Object, Optional Arg12 As Object, Optional Arg13 As Object, Optional Arg14 As Object, Optional Arg15 As Object, Optional Arg16 As Object, Optional Arg17 As Object, Optional Arg18 As Object, Optional Arg19 As Object, Optional Arg20 As Object, Optional Arg21 As Object, Optional Arg22 As Object, Optional Arg23 As Object, Optional Arg24 As Object, Optional Arg25 As Object, Optional Arg26 As Object, Optional Arg27 As Object, Optional Arg28 As Object, Optional Arg29 As Object, Optional Arg30 As Object) As Object
        Membre de Microsoft.Office.Interop.Excel.ApplicationClass
    mais dans Microsoft.Office.Interop.Outlook, dans la classe application, il n'y a pas de fonction run...

  4. #4
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Si tu le n'as pas sur ta machine, tu peux télécharger l'aide de VBA Office 2013:

    https://www.microsoft.com/en-us/down....aspx?id=40326

    Il va falloir que tu écumes les méthodes de l'objet Application d'Outlook, pour voir s'il n'y a pas quelque chose ressemblant à Run.

    Ou bien que tu ailles fouiller à partir de là:

    https://msdn.microsoft.com/fr-fr/lib...ffice.14).aspx

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations forums :
    Inscription : Mai 2012
    Messages : 12
    Par défaut
    merci pour tes réponses. J'ai déjà cherché en vain dans tout ce que tu me dis depuis plusieurs jours... et aussi sur google, en français, en anglais, et je ne trouve rien qui fonctionne. La bière virtuelle est à nouveau en jeu!

  6. #6
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations forums :
    Inscription : Mai 2012
    Messages : 12
    Par défaut
    Personne n'a déjà fait ça ?

  7. #7
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    As-tu déjà essayé ce qui est décrit ici ? Calling Outlook VBA Macro from outside (VB/VBScript/C#)
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

Discussions similaires

  1. Comment appeler une fonction VBA outlook depuis visual studio ?
    Par ArMen56K dans le forum Visual Studio
    Réponses: 0
    Dernier message: 08/10/2015, 18h33
  2. [SQL-Server] Comment appeller une fonction stockée en MS SQLServer depuis PHP ?
    Par momoG dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 04/12/2008, 16h11
  3. Comment appeler une fonction depuis .Net ?
    Par bluecurve dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 04/07/2007, 19h00
  4. [WebForms]Comment appeler une fonction ASP depuis une JavaScript ?
    Par flagadda dans le forum Général Dotnet
    Réponses: 6
    Dernier message: 11/08/2006, 14h24
  5. Comment appeler une fonction JavaScript depuis Delphi ?
    Par Alfred12 dans le forum Web & réseau
    Réponses: 4
    Dernier message: 17/06/2005, 18h15

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