Modifier VBA pour envoie de pdf par mail Outlook

peut-être en passant par <style _____________>

je vais regarder demain matin

Pas de problème ! Bonne soirée et à demain !

et comme ceci ? avec style plus actuel que <font>

.HTMLBody = "<span style=""font-family: century gothic; font-size: 11;"">Bonjour,<br><br><br>Suite à un problème rencontré, je vous demanderai de prendre note de l'action préventive en pièce jointe.<br></span>" & .HTMLBody

Je remercie h2so4 et Steelson pour leur aide.

Cela fonctionne parfaitement, voici le code final, si cela peut aider :

Sub Mail_interne()
Dim xSht As Worksheet
Dim xFileDlg As FileDialog
Dim xFolder As String
Dim xYesorNo As Integer
Dim xOutlookObj As Object
Dim xEmailObj As Object
Dim xUsedRng As Range

Set xSht = ActiveSheet

xFolder = "Dossier de destination des PDF" + Left(ThisWorkbook.Name, InStr(ThisWorkbook.Name, ".") - 1) + ".pdf"

'Vérifier si le fichier existe déjà
If Len(Dir(xFolder)) > 0 Then
    xYesorNo = MsgBox(xFolder & " already exists." & vbCrLf & vbCrLf & "Voulez-vous l'écraser?", _
                      vbYesNo + vbQuestion, "File Exists")
    On Error Resume Next
    If xYesorNo = vbYes Then
        Kill xFolder
    Else
        MsgBox "Si vous n'écrasez pas le PDF existant, vous ne pouvez pas continuer." _
                    & vbCrLf & vbCrLf & "Appuyez sur OK pour quitter cette macro.", vbCritical, "Quitter la macro"
        Exit Sub
    End If
    If Err.Number <> 0 Then
        MsgBox "Impossible de supprimer le fichier existant. Veuillez vous assurer que le fichier n'est pas ouvert ou protégé en écriture." _
                    & vbCrLf & vbCrLf & "Appuyez sur OK pour quitter cette macro.", vbCritical, "Impossible de supprimer le fichier"
        Exit Sub
    End If
End If

Set xUsedRng = xSht.UsedRange
If Application.WorksheetFunction.CountA(xUsedRng.Cells) <> 0 Then

    'Enregistrer en fichier PDF
    MsgBox xFolder
    xSht.ExportAsFixedFormat Type:=xlTypePDF, FileName:=xFolder, Quality:=xlQualityStandard

    'Créer un email Outlook
    Set xOutlookObj = CreateObject("Outlook.Application")
    Set xEmailObj = xOutlookObj.CreateItem(0)
    With xEmailObj
        .Display
        .To = "Mail"
        .CC = "Mail"
        .Subject = Left(ThisWorkbook.Name, InStr(ThisWorkbook.Name, ".") - 1) + " pour information"
        .HTMLBody = "<span style=""font-family: century gothic; font-size: 15;"">Bonjour,<br><br><br>Bla bla bla.<br></span>" & .HTMLBody
        .Attachments.Add xFolder
        .GetInspector.CommandBars.Item("Insert").Controls("Signature").Controls(1).Execute

        If DisplayEmail = False Then
            '.Send
        End If
    End With
Else
  MsgBox "La feuille de calcul active ne peut pas être vide"
  Exit Sub
End If
End Sub

Parfait !

Cela dit je n'ai pas fait grand chose, mis à part ma connaissance du langage html (et des CSS). Et donc le merci va à h2so4.

Pour le coup du .HTMLBody = "bla bla <br>" & .HTMLBody, j'ai quand même mis 3 ans à trouver cette astuce ! et l'intégration de la signature a toujours fait couler beaucoup d'encre (numérique) dans les forum.

Bonjour Steelson,

je note bien précieusement ta découverte pour garder la signature outlook. merci du partage

et un p'tit cœur à tous les deux lol

Rechercher des sujets similaires à "modifier vba envoie pdf mail outlook"