'———————— REFERENCES ———————————————————————————————————
' Microsoft Outlook XX.0 Object Library
Sub EnvoyerEmail()
' Par Excel-Malin.com ( https://excel-malin.com )
' Adapté par Valtrase
' Date : 06/08/2019
On Error GoTo EnvoyerEmail_Erreur
Dim oOutlook As Outlook.Application, WasOutlookOpen As Boolean, oMailItem As Outlook.MailItem
Dim Body As Variant, Subject As String
Dim Filename1 As String, LineHeader As String, sFolder As String
Subject = "Documents chantier XXX"
Body = "<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.0 Transitional//EN"">" & _
"<HTML><HEAD>" & _
"<META http-equiv=Content-Type content=""text/html; charset=iso-8859-1"">" & _
"<META content=""MSHTML 6.00.2800.1516"" name=GENERATOR></HEAD>" & _
"<BODY><DIV STYLE=""font-size: 16px; font-face: Book Antiqua;"">"
Body = Body & "Bonjour,<br>Merci de trouver les documents demandés en pièces jointes."
'Préparer Outlook
PreparerOutlook oOutlook
Set oMailItem = oOutlook.CreateItem(0)
With oMailItem
'.From = SendFrom
If (Range("Send.To")) <> "" Then .To = Range("K3")
If Range("Send.ToCopy") <> "" Then .cc = Range("Send.ToCopy")
.Subject = Subject
.BodyFormat = olFormatHTML
.HTMLBody = Body & "<br><br>" & .HTMLBody 'Signature
.Attachments.Add Range("D3")
.Display '<- affiche l'email (si vous ne voulez pas l'afficher, mettez cette ligne en commentaire)
'.Save '<- sauvegarde l'email avant l'envoi (pour ne pas le sauvegarder, mettez cette ligne en commentaire)
'.Send '<- envoie l'email (si vous voulez seulement préparer l'email et l'envoyer manuellement, mettez cette ligne en commentaire)
End With
EnvoyerEmail_Exit:
If (Not (oMailItem Is Nothing)) Then Set oMailItem = Nothing
If (Not (oOutlook Is Nothing)) Then Set oOutlook = Nothing
Exit Sub
EnvoyerEmail_Erreur:
MsgBox "Oupss... le mail n'a pas pu être envoyé..." & vbNewLine & Err, vbCritical, "Erreur"
Resume EnvoyerEmail_Exit
End Sub