Envoyer un mail avec CDO - Encore
Bonjour à tous.
J'ai besoin d'inclure dans une macro des envois de mail automatiques. J'ai cherché sur le Net une méthode sans passer par un logiciel de messagerie (j'ai un PC avec Outlook, un avec windows live mail et le troisième PC sur lequel tournera la macro n'a aucun logiciel).
J'ai donc trouvé un code que j'ai adapté à ma situation mais il me revoie systématiquement l'erreur " Le transport a échoué dans sa connexion au serveur". J'ai beau chercher un peu partout, je ne vois pas où ça bloque. Les données sur serveur SMTP semblent correctes, le module CDO pour Windows 2000 est bien activé, les adresses mail et mot de passe sont bons, ...
Est ce qu'il faut bien mettre les mails, mot de passe et nom de serveur entre guillemets ? J'ai trouvé tout et son contraire sur le net.
Merci d'avance à ceux qui me permettront de dénouer ce sac de noeuds...
Voilà le code :
Const cdoBasic = 1
Dim admail As String, i As Integer
Dim messmail As String, secours As String
Dim expediteur As String
On Error Resume Next
expediteur = Range("a1").Value
messmail = Range("a3").Value
With CreateObject("CDO.Message")
If Err Then
secours = MsgBox("Problème de CDO non installé sur le serveur")
Exit Sub
Else
.From = expediteur
.To = Range("a2").Value
.BCC = ""
.Subject = "Bonjour"
.TextBody = messmail
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = "1"
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "XXXX@live.fr"
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "XXXX"
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.live.com"
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = "true"
.Configuration.Fields.Update
.AddAttachment "C:\chemin\fichier.pdf"
.Send
If Err Then MsgBox "Le message n'a pas pu être expédié."
End If
On Error GoTo 0
End With
End SubJ'y suis allé...
J'ai essayé son code j'ai la même erreur, même en changeant le port.
Manu