Envoyer un mail avec pièce jointe CDO

Bonjour,

Voilà j'ai une soucis j'ai suivi le code du liens https://www.commentcamarche.net/faq/36411-vb6-vba-envoi-mail-avec-l-objet-cdo

Cependant une message d'erreur apparaît sur
.Send

Une fenêtre affiche Le transport a échoué dans sa connections au serveur.
J'ai pourtant bien configuré le serveur STMP.
Merci d'avance!

1 réponse

  1. Contributeur
    Bonjour,

    J'ai pourtant bien configuré le serveur STMP. C'est sans doute le "bien" qui est de trop.
    Selon le smtp que tu utilises il faut que les paramètres soient parfaitement adaptés.
    Par exemple, si tu utilises le smtp xxxx pour envoyer un message de gmail à laposte, aucun souci mais si tu veux envoyer un message de laposte à laposte, il te faut utiliser smtp.laposte.net en sécurisé sinon cela ne fonctionnera pas.
    Il y a plein d'autres cas du même genre, mais sinon le lien que tu signales est parfaitement opérationnel et fonctionne parfaitement.
    0
    1. Merci de ta réponse mais après avoir vérifié plusieurs fois je ne vois pas où est mon erreur.
      Sub DEMO_EnvoiMailCDO()
      Dim mMessage As Object
      Dim mConfig As Object
      Dim mChps

      Set mConfig = CreateObject("CDO.Configuration")

      mConfig.Load -1
      Set mChps = mConfig.Fields
      With mChps
      .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
      .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "serveur"
      .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 587
      .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = "1"
      .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "adresse@"
      .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "mdp"
      .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = "false"
      .Update
      End With

      Set mMessage = CreateObject("CDO.Message")
      With mMessage
      Set .Configuration = mConfig
      .From = adresse@"
      .to = "adresse2@"
      .Subject = "Le sujet du mail" & Now
      .TextBody = "Ce mail vous est envoyer pour tester la macros "
      .AddAttachment "C:\Users\toto\Documents\yo.pdf"
      .Send

      End With

      Set mMessage = Nothing
      Set mConfig = Nothing
      Set mChps = Nothing
      End Sub
      0
    2. Contributeur
      Bonjour,

      Tu n'as pas compris ma remarque : je ne t'ai pas dit que ce n'était pas bien codé mais que les valeurs envoyées doivent être conformes à l'attente du serveur smtp.

      "serveur" n'est pas un serveur smtp, il faut avoir le bon paramètre dont tu as ici la liste, et idem pour "adresse@" et "mdp".
      Comme tu mets 587 en port cela limite ton choix à 2 ou 3 serveurs.
      0
    3. Ok d'accord merci pour ta réponse j'ai réussi à le faire marcher
      Bonne journée !
      0