Bonjour,
Je vous expose mon problème:
Je génère des mails depuis un fichier Excel que je doit adresser à des destinataires différents.
Je souhaiterai que chaque mail créé et envoyé soit enregistré dans un répertoire spécifique dans mon disque dur et bien sur en dehors de outlook.
Vous trouverez ci-après un début de procédure qui fonctionne parfaitement jusqu'à la création du mail mais qui n'enregistre pas ce dernier sur mon disque dur.
Je vous remercie d'avance pour l'aide apportée.
Cordialement
Sub envoimail()
'Mail aux concessionnaires
Dim Outlook As Object
Dim objCurrentMessage As Object
Dim Mail As Object
Dim dest As String
Dim Objet As String
Dim Corps As String
Dim Adr As String
Dim num, dest1
Range("V1").Select
dest = ActiveCell
Range("N2").Select
num = ActiveCell
dest1 = dest 'adresse du destinataire
Objet = "Dossier DICT-DT N° " & Range("B" & num).Value & " - " & Range("V1").Value
Range("N1").Select
Adr = ActiveCell
'corps de texte avec texte et sauts de ligne
Corps = "Bonjour, " & _
vbCrLf & _
"Veuillez trouver ci-joint en annexe, une déclaration de projet de travaux concernant :" & " " & Range("M" & num).Value & " ayant pour objet :" & Range("K" & num).Value & _
vbCrLf & _
"Vous en souhaitant bonne réception." & _
vbCrLf & _
"Cordialement." & _
vbCrLf & vbCrLf & _
"PS : Ce mail est généré automatiquement, merci de ne pas y répondre." & _
vbCrLf & vbCrLf & _
"XXXX" & _
vbCrLf & _
"YYYYY" & _
vbCrLf & _
"ZZZZ" & _
vbCrLf & _
"Secrétaire AAAA" & _
vbCrLf & _
"Adresse" & _
vbCrLf & _
"CP" & _
vbCrLf & _
"Mailto: " & Adr
Set Outlook = CreateObject("Outlook.Application")
Set Mail = Outlook.CreateItem(0)
With Mail
.To = dest
.CC = ""
.BCC = ""
.Subject = Objet
.Body = Corps
Workbooks.Open Filename:= _
Range("Q" & num).Value
On Error GoTo 100
.Attachments.Add ActiveWorkbook.FullName
ActiveWindow.Close
Workbooks.Open Filename:= _
Range("R" & num).Value
.Attachments.Add ActiveWorkbook.FullName
On Error GoTo 100
ActiveWindow.Close
.Display
End With
With Mail
Dim Repertoire, NomExport
NomExport = objCurrentMessage.Subject & objCurrentMessage.CreationTime ' Range("V" & num).Value
Repertoire = Range("U" & num).Value
.Mail.SaveAs.Filename = Repertoire
End With
100
End Sub
Partager