im Forum habe ich nach einem VBA-Code gesucht, mit dem ich aus Excel heraus
nur das aktuelle Tabellenblatt als .pdf versenden kann.
Bevor es aber versendet wird, soll es mir noch einmal angezeigt werden
um evtl. den "Bodytext" abändern zu können.
Ich habe mir nachfolgenden Code zusammengestellt, der auch funktioniert.
Outlook wird geöffnet, Email mit Dateianhang wird erstellt, Outlooksymbol erscheint in der Taskleiste aber die Exceldatei verbleibt am Bildschirm.
Wenn ich unten auf das Outlooksymbol in der Taskleiste klicke erscheint die Email wie gewünscht.
Frage: Wie bekomme ich das hin, dass die Mail nach dem Erstellen ohne zu klicken sofort am Bildschirm angezeigt wird.
Code:
Sub als_pdf_senden()
Dim strPfad As String
strPfad = Environ("TEMP") 'Speicherort bestimmen
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
strPfad & "\" & ActiveSheet.Name & ".pdf" ', OpenAfterPublish:=False
Dim Outlook As Object
Dim OutlookMailItem As Object
Dim MyAttachments As Object
Set OutlookApp = CreateObject("outlook.application")
Set OutlookMailItem = OutlookApp.CreateItem(0)
Set MyAttachements = OutlookMailItem.Attachments
With OutlookMailItem
.to = Range("A3")
.Subject = "Abrechnung" 'Betreff
.BodyFormat = 2 '2 = HTML, 1 = Text
.Body = "" 'Email Inhalt
MyAttachements.Add strPfad & "\" & ActiveSheet.Name & ".pdf"
.Display
End With
Kill (strPfad & "\" & ActiveSheet.Name & ".pdf")
Set OutlookApp = Nothing
Set OutlookMailItem = Nothing
End Sub