FONCTION ENVOI DE MAIL PAR VBA SANS CLIENT LOCAL, PAR SERVEUR SMTP

Apa 23 Messages postés 10 Date d'inscription samedi 11 novembre 2000 Statut Membre Dernière intervention 30 mars 2010 - 4 févr. 2008 à 10:48
siinoxcodeS Messages postés 5 Date d'inscription mardi 7 février 2012 Statut Membre Dernière intervention 22 février 2012 - 21 févr. 2012 à 11:22
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/45594-fonction-envoi-de-mail-par-vba-sans-client-local-par-serveur-smtp

siinoxcodeS Messages postés 5 Date d'inscription mardi 7 février 2012 Statut Membre Dernière intervention 22 février 2012
21 févr. 2012 à 11:22
Ah je pensais que les messages que j'avais laissé auparavant n'avaient pas fonctionné.
Merci à toi JB2718, grâce à toi tout marche.
Pour la signature j'ai trouvé une solution, en rajoutant un paramètre signature à la fonction qui me renvoie le chemin d'accès de l'image (car l'utilisateur choisi sa signature) :

Cette ligne pour récupérer juste le nom et l'extension de l'image :
NomSignature = Replace(pstrSignature, "C:\signatures", "")

strHTML = "<html>" & pstrCorps & "

</html>"
objEmail.HtmlBody = strHTML
objEmail.AddRelatedBodyPart pstrSignature, NomSignature, cdoRefTypeId

Ceci fonctionne malheureusement uniquement sur l'ordinateur.
En vérifiant l'email de chez moi, l'image n'apparait pas (petite croix).

Je pensais alors créer un fichier html affichant l'image, et l'utiliser dans le code comme ceci :
CreateMHTMLBody("file://" & CheminFichierHTML)
Mais j'arrive au mieux à aficher le code du fichier HTML dans le message mais pas le contenu..

Si quelqu'un a une idée.
siinoxcodeS Messages postés 5 Date d'inscription mardi 7 février 2012 Statut Membre Dernière intervention 22 février 2012
17 févr. 2012 à 10:57
Bonjour à tous,
Je suis actuellement en stage et je me sers de cette fonction qui est parfaite en tout point, seulement j'aimerai savoir si il serait possible d'ajouter une signature au mail ?
Merci d'avance
jb2718 Messages postés 3 Date d'inscription mardi 10 mai 2011 Statut Membre Dernière intervention 8 février 2012
8 févr. 2012 à 12:19
Bonjour

Pour l'envoi à plusieurs destinataires, il suffit de les indiquer en séquence en les séparant par des points-virgules.
Exemple "jean.dupont@sfr.fr;alfred.durand@free.fr"

Cordialement

PS - pour l'envoi en copie cachée vous auriez pu ajouter un paramètre suplémentaire au lieu de le substituer à objEmail.To
Pour ma part j'ai généralisé la fonction de la façon suivante :

Public Function SMTPSendMail(Emetteur As String, _
Dest As String, _
Optional Cc As String, _
Optional CCi As String, _
Optional Objet As String, _
Optional Texte As String, _
Optional Pj As Variant _
) As Boolean

[...]

objMessage.From = Emetteur
objMessage.To = Dest
objMessage.Cc = Cc
objMessage.BCC = CCi
objMessage.Subject = Objet
objMessage.TextBody = Texte
siinoxcodeS Messages postés 5 Date d'inscription mardi 7 février 2012 Statut Membre Dernière intervention 22 février 2012
8 févr. 2012 à 09:09
En fait, pour le Bcc c'est bon, j'avais pas pensé à regarder si une méthode existé déjà, il suffit simplement de remplacer objEmail.To = pstrTo
par : objEmail.BCC = pstrTo

J'avais déjà réussi à envoyer plusieurs pièces jointes en passant par un array, est-ce la même procédure pour les destinataires ?
siinoxcodeS Messages postés 5 Date d'inscription mardi 7 février 2012 Statut Membre Dernière intervention 22 février 2012
8 févr. 2012 à 08:59
Bonjour !
Merci pour ce code qui fonctionne à merveille !
Je suis actuellement en stage et j'ai toutefois quelques question :
- Est-il possible passer en paramètre un mail de réponse différent de notre mail d'expéditeur (Le client répondra alors sur cette adresse) ?
- Plus important, je vois qu'il est possible d'envoyer le message à plusieurs destinataires mais je n'ai pas trouvé comment faire hélas, pourriez vous me donner des pistes ?
- Pour finir, est-il possible d'envoyer le message en Bcc ? (En effet pour l'entreprise dans laquelle j'effectue mon stage il n'est pas question que les clients puissent voir à qui d'autre a été envoyé le message...)

J'espère que vous pourrez me débloquer sur ces points (surtout les deux derniers).
Merci d'avance :-)
Afficher les 33 commentaires