Envoi de mail pat excel

Résolu/Fermé
yhelard Messages postés 27 Date d'inscription lundi 5 décembre 2016 Statut Membre Dernière intervention 3 août 2023 - Modifié par jordane45 le 5/12/2016 à 12:22
yhelard Messages postés 27 Date d'inscription lundi 5 décembre 2016 Statut Membre Dernière intervention 3 août 2023 - 14 déc. 2016 à 11:21
Bonjour,

J'ai essayé cette macro:
Sub EnvoiMail()
  Workbooks("Essai.xlsx").SendMail Recipients:="adresse.valide@yahoo.com", _
                          Subject:="Test envoi classeur", _
                          ReturnReceipt:=True
End Sub

EDIT : Ajout des balises de code

mais cela ne marche pas.
Erreur:1004
La méthode send mail a échoué.

Merci de votre aide

A voir également:

11 réponses

thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
10 déc. 2016 à 13:59
Bonjour,

A priori lié à un problème de sécurité Outlook.
Quand je teste cette macro, un message d'alerte de sécurité apparaît avec comme option par défaut : refuser. L'erreur 1004 apparaît avec cette option.
0
yhelard Messages postés 27 Date d'inscription lundi 5 décembre 2016 Statut Membre Dernière intervention 3 août 2023
10 déc. 2016 à 16:54
Bonjour
Je ne comprends pas votre réponse/
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681 > yhelard Messages postés 27 Date d'inscription lundi 5 décembre 2016 Statut Membre Dernière intervention 3 août 2023
Modifié par thev le 10/12/2016 à 20:38
0
yhelard Messages postés 27 Date d'inscription lundi 5 décembre 2016 Statut Membre Dernière intervention 3 août 2023
11 déc. 2016 à 05:31
Bonjour
Merci de la peine que vous vous donnez pour me répondre.
Que puis-je faire pour supprimer ce blocage.
Je n'ai pas installé outlook et je ne comprends pas pourquoi ce serait outlook qui bloque. Je me sers de gmail et yahoo.
Bonne journée
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
Modifié par thev le 11/12/2016 à 12:30
Bonjour,

Le souci est, je pense, que cette macro ne fait appel qu'à Outlook pour aller chercher le serveur de messagerie.

Vous avez 2 solutions.
1) La plus simple est d'installer Outlook et d'y définir vos comptes Gmail et Yahoo
2) utiliser la bibliothèque Microsoft CDO WINDOWS (à ajouter via l'éditeur VBA --> outils --> références) en y définissant le serveur de messagerie Gmail comme exemple ci-dessous

Sub envoi_email()

Dim lobj_cdomsg As CDO.Message
Set lobj_cdomsg = New CDO.Message
'Add the Project Reference Microsoft CDO WINDOWS FOR 2000
lobj_cdomsg.Configuration.Fields(cdoSMTPServer) = "smtp.gmail.com"
lobj_cdomsg.Configuration.Fields(cdoSMTPConnectionTimeout) = 30
lobj_cdomsg.Configuration.Fields(cdoSendUsingMethod) = cdoSendUsingPort
lobj_cdomsg.Configuration.Fields.Update
lobj_cdomsg.To = "Wallace.Evans@gwinnettcounty.com,raman.thiagarajan@gwinnettcounty.com"
lobj_cdomsg.From = "raman.thiagarajan@gwinnettcounty.com"
lobj_cdomsg.Subject = "filename Sent to www.???.com "
lobj_cdomsg.TextBody = "File FTP LOG ATTACHED."
lobj_cdomsg.AddAttachment ("\\server\filefolder\FTPlog.TXT")
lobj_cdomsg.Send
Set lobj_cdomsg = Nothing

End Sub

 
0
yhelard Messages postés 27 Date d'inscription lundi 5 décembre 2016 Statut Membre Dernière intervention 3 août 2023
11 déc. 2016 à 16:54
Bonsoir
Autre problème; ou puis-je trouver la library CDO WINDOWS FOR 2000 et sous quelle forme se présente-t-elle?
Merci
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
11 déc. 2016 à 17:55
Comme dit précédemment, elle se trouve dans l'éditeur VBA, dans le menu outils, puis le sous-menu références. Une fois trouvée, il suffit de la cocher pour qu'elle soit prise en compte dans toute macro VBA.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
yhelard Messages postés 27 Date d'inscription lundi 5 décembre 2016 Statut Membre Dernière intervention 3 août 2023
11 déc. 2016 à 18:37
Justement, elle ne se trouve pas dans le sous menu références.
je pense que je peux la télécharger sur internet, mais je ne la trouve pas. il y a plein de fichiers mais je ne sais pas lequel télécharger.
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
11 déc. 2016 à 18:58
Il s'agit de la bibliothèque: cdosys.dll se trouvant dans c:\windows\system32

Elle est a priori contenue dans l'installation d'Outlook.
0
yhelard Messages postés 27 Date d'inscription lundi 5 décembre 2016 Statut Membre Dernière intervention 3 août 2023
12 déc. 2016 à 06:04
Bonjour
J'ai réussi à charger la librairie. Ca marche beaucoup mieux, mais maintenant, il se bloque sur le "send".
Les adresses mail que j'ai mis sont bonnes. Pour le serveur de messagerie "smtp.gmail.com", je ne sais pas.
L'erreur retournée est:-2147220973 (80040213)
"Le transport a échoué dans sa connexion au serveur"
Bonne journée et Merci
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
12 déc. 2016 à 12:35
Passer par le serveur de messagerie Google est compliqué. Cela marchera sans problème si tu utilises le serveur de messagerie SMTP de ton FAI.
Pour Free par exemple, smtp.free.fr ou SFR, smtp.sfr.fr ou Orange, smtp.orange.fr
0
yhelard Messages postés 27 Date d'inscription lundi 5 décembre 2016 Statut Membre Dernière intervention 3 août 2023
12 déc. 2016 à 21:03
Et bouygues, auriez-vous une idée du nom du serveur de messagerie.
J'ai cherché sur mon PC mais je n'ai rien trouvé.
Bonne soirée
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
12 déc. 2016 à 21:13
via une recherche rapide sur Google,
smtp.bouygtel.fr
0
yhelard Messages postés 27 Date d'inscription lundi 5 décembre 2016 Statut Membre Dernière intervention 3 août 2023
14 déc. 2016 à 08:44
Bonjour
Je suis désolé mais le problème est toujours là avec smtp.bouygtel.fr
Bonne joournée
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
14 déc. 2016 à 11:11
Bonjour,

réessayer alors avec le serveur smtp.gmail.com via ce code, qui fonctionne chez moi


Sub EnvoiMail()
'Add the Project Reference Microsoft CDO WINDOWS FOR 2000
Dim cdo_msg As New CDO.Message

'configuration message
cdo_msg.Configuration.Fields(cdoSMTPServer) = "smtp.gmail.com"
cdo_msg.Configuration.Fields(cdoSMTPConnectionTimeout) = 60
cdo_msg.Configuration.Fields(cdoSendUsingMethod) = cdoSendUsingPort
cdo_msg.Configuration.Fields(cdoSMTPServerPort) = 465
cdo_msg.Configuration.Fields(cdoSMTPAuthenticate) = cdoBasic
cdo_msg.Configuration.Fields(cdoSMTPUseSSL) = True
cdo_msg.Configuration.Fields(cdoSendUserName) = "xxxxxxxxxx@gmail.com"
cdo_msg.Configuration.Fields(cdoSendPassword) = "ppppppppp"
cdo_msg.Configuration.Fields.Update

'remplissage et envoi message
cdo_msg.To = "adresse1"
cdo_msg.From = "adresse2"
cdo_msg.Subject = "filename Sent to www.???.com "
cdo_msg.TextBody = "File FTP LOG ATTACHED."
cdo_msg.AddAttachment ("C:\Users\nnnnnn\Documents\classeur1.xls")
cdo_msg.Send

'libération objet message
Set cdo_msg = Nothing
End Sub




0
yhelard Messages postés 27 Date d'inscription lundi 5 décembre 2016 Statut Membre Dernière intervention 3 août 2023
14 déc. 2016 à 11:21
C'est ok, ca marche.
Merci
0