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

VBA Access Discussion :

Envoi mail via Outlook


Sujet :

VBA Access

  1. #1
    Membre du Club
    Inscrit en
    Avril 2003
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 71
    Points : 65
    Points
    65
    Par défaut Envoi mail via Outlook
    Bonjour à tous,

    J'envoie donc un mail depuis Access (macro VB6). J'ai donc la fameuse fenêtre Outlook qui s'affiche en me demandant la confirmation de l'envoi

    Dans notre cas il a été choisi que l'utilisateur clique sur "oui" à chaque mail (il y a des fous .... )

    Le hic c'est que, lorsque l'utilisateur clique sur non l'appli plante

    J'aimerais donc réussir à récupérer la réponse de l'utilisateur pour permettre, en cas de non, de continuer le traitement sans envoyer le mail ...

    Avez-eu une idée des fonctions à utiliser et même si c'est possible ?

    Merci !!

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 656
    Points : 34 372
    Points
    34 372
    Par défaut
    salut,
    pourrais-tu nous spécifier si tu travailles sous une version spécifique de Outlook (Express, 2000 ,2003) ?
    L'idée est de passer à "autoriser les macros externes" dans les options de l'application Outlook.

    Autre méthode : utiliser les messages CDO.

  3. #3
    Membre du Club
    Inscrit en
    Avril 2003
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 71
    Points : 65
    Points
    65
    Par défaut
    J'utilise un outlook classique
    par contre je suis pas sûre que mon client acceptera d'autoriser les macros externes dans Outlook, ils ont une politique de sécurité à la con ...

    Message CDO ? Je vais voir ce que c'est

  4. #4
    Membre du Club
    Inscrit en
    Avril 2003
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 71
    Points : 65
    Points
    65
    Par défaut
    D'autres idées pour régler ce soucis ?
    merci!!

  5. #5
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 656
    Points : 34 372
    Points
    34 372
    Par défaut
    à adapter bien sûr :
    (récupéré sur un autre topic de ce forum il me semble)
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    Sub EnvoiMail(strTo As String, strFrom As String, strSubject As String, strBody As String, Optional strCc As String, Optional strCci As String, Optional PJ As Variant)
    Dim iMsg As Object, iConf As Object, Flds As Object
    Dim i As Integer
     
    Set iMsg = CreateObject("cdo.message")
    Set iConf = CreateObject("cdo.configuration")
     
    Set Flds = iConf.fields
    With Flds
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
        'remplacez "smtp.nomserveur.fr" par le nom de serveur de votre FAI :
        'http://outlook.developpez.com/faq/index.php?page=Configuration#Paras_FAI
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.piou.com"
        .Update
    End With
     
    With iMsg
        Set .Configuration = iConf
        .To = strTo
        .Cc = strCc
        .Bcc = strCci
        .From = strFrom
        .Subject = strSubject
        .HTMLBody = strBody
        For i = 0 To UBound(PJ)
            .AddAttachment (PJ(i))
        Next i
        .Send
    End With
     
    End Sub
     
     
    Sub LaunchPiou()
    Dim strBody As String
    strBody = "Bonjour<br>" & _
    "Ceci est un test d'envoi de mail via le code VBA de PiouPiou.<br><br>" & _
    "PIOUPI\o/"
    Call EnvoiMail("piou@piou.com", "frompiou@piou.com", "Test envoi mail", strBody, , , "")
    End Sub

  6. #6
    Membre du Club
    Inscrit en
    Avril 2003
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 71
    Points : 65
    Points
    65
    Par défaut
    Merci Piou-Piou
    Je vais tenter ça.

    Je suis surtout en recherche de propositions à exposer à mon client. Donc je peux soit lui proposer de passer par le click Yes (mais j'aime bof cette solution), soit CDO (je vais faire le test avant, merci pour le bout de code)

    peut-on passer par un serveur smtp aussi ?

    Dans le cas d'envoi massifs de mails (200 d'un coup), vous conseillerez quoi comme solution robuste ?

  7. #7
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 656
    Points : 34 372
    Points
    34 372
    Par défaut
    le mass mailing, je ne connais pas vraiment...
    pour le smtp, j'ai mis un faux smtp, mais tous ceux des entreprises fonctionneront en principe

  8. #8
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 43
    Points : 51
    Points
    51
    Par défaut
    Salut a Vous tous,

    J'avais le meme probleme.
    J'ai bien profite 'du bout de code' de PiouPiou.
    Et oh miracle, ca marche.

    Une petite info supplementaire: on peut mettre directement l'adresse IP du server au lieu du nom de server.

Discussions similaires

  1. envoi mail via outlook abap
    Par kitty2006 dans le forum SAP
    Réponses: 8
    Dernier message: 04/11/2010, 10h43
  2. Soucis dans ce Code Envoi Mail via Outlook
    Par vaucluseimmo dans le forum VBA Word
    Réponses: 3
    Dernier message: 11/02/2010, 14h21
  3. [AC-2003] Envoi mail via Outlook et attachments
    Par JPaul94300 dans le forum VBA Access
    Réponses: 1
    Dernier message: 14/08/2009, 09h48
  4. [WD10] envoi mail via outlook
    Par yann_72 dans le forum WinDev
    Réponses: 10
    Dernier message: 18/04/2008, 08h34
  5. procedure envoie mail via OUTLOOK
    Par laurent1 dans le forum Oracle
    Réponses: 13
    Dernier message: 22/10/2006, 10h16

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