VBA eMail - Bild in der Signatur wird nicht angezeigt
05.12.2019 06:43:49
Netforward
ich möchte aus Excel heraus eine eMail über Outlook versenden.
Die eMail enthält einen Text, eine Grafik und zum Schluss die Signatur, die auch noch ein Logo enthält.
Die Grafik in der eMail kann ich einbetten und wird auch angzeigt. Die Signatur, die Standardmäßig aufgerufen wird, wenn eine neue eMail generiert wird, enthält auch ein Logo, das erst angezeigt wird, am Ende des Codes aber die Grafik nicht mehr angezeigt werden kann. Ich verstehe nicht warum das so ist?
Anbei der Code:
Option Private Module
Option Explicit
Public Sub Email_Erstellen_Formatiert_NU()
Dim olApp As Object
Dim wdApp As Object
Dim wdDoc As Object
Dim wdRange As Object
Dim olOldbody As String
Dim olNewBody As String
Dim vntWortBlau As Variant
Dim vntWortRot As Variant
Dim lngWort As Long
Const wdFindContinue = 1
Rem Wörter angeben die rot gefärbt werden sollen
vntWortRot = Array("neue CD", "Hubert von Goisern", "Viel Vergnügen")
Rem Emailtext erstellen
olNewBody = "Liebe Leserin, lieber Leser!" & "
" ' Grußzeile
olNewBody = olNewBody & " " ' _
Bild, Grafik
olNewBody = olNewBody & "Auf Wiedersehen..." & "
" ' Schlusszeile
Rem Outlook-Objekt erstellen
Set olApp = CreateObject("Outlook.Application")
Rem Email erstellen
With olApp.CreateItem(0)
.GetInspector.Display
olOldbody = .HTMLBody
.To = "emailadresse@gmx.net"
.Subject = "Frohe Weihnachten"
.Attachments.Add "E:\Gutschein.pdf"
.HTMLBody = olNewBody
Rem Word-Editor-Objekt erstellen (zum Formatieren erforderlich)
Set wdApp = .GetInspector
Set wdDoc = wdApp.WordEditor
Set wdRange = wdDoc.Range
wdRange.WholeStory
Rem Emailtext formatieren
With wdRange
Rem Schriftart und Schriftgröße festlegen
.Font.Name = "Arial"
End With
Rem Emailtext um Signatur ergänzen
.HTMLBody = .HTMLBody & olOldbody
End With
Rem Objekte freigeben
Set wdRange = Nothing
Set wdDoc = Nothing
Set wdApp = Nothing
Set olApp = Nothing
End Sub