mit vba eine PDF einfügen

Moderator: ModerationP

mit vba eine PDF einfügen

Beitragvon assmedium » 07. Dez 2018, 14:09

Hallo,

ich möchte aus einer Excel Datei eine pdf erstellen und diese in eine Mail einfügen (allerdings nicht als Anhang).

das erstellen einer pdf und das anlegen einer mail klappt schon. allerdings bekomme ich die pdf noch nicht eingefügt.

bis her sieht der Code so aus
Code: Alles auswählen
Sub Makro13()

    ActiveWorkbook.Save
    ChDir "C:\Users\Test\Desktop\"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "C:\Users\Test\Desktop\Mappe2.pdf", Quality:=xlQualityStandard, IncludeDocProperties _
        :=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
       


Dim objOutlook As Object
Dim objMail As Object

Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)

With objMail
   .To = "Test@gmail.com"
   .Subject = "Test"
   .Body = "Ihre Nachricht."
   .Send
End With
End Sub


Mit dem Makrorecoder in Excel habe ich folgenden Code aufgezeichnet:

Code: Alles auswählen
    ActiveSheet.OLEObjects.Add(Filename:= _
        "C:\Users\Test\Desktop\Mappe2.pdf", Link:=False, DisplayAsIcon:= _
        False).Select


Dieser fügt die pdf so wie ich sie haben möchte schonmal in eine Exel mappe ein. Kann mir einer sagen wie ich diese jetzt in die mail bekomme?

Gruß

assmedium
assmedium
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 99
Registriert: 10. Mai 2016, 10:05

Re: mit vba eine PDF einfügen

Beitragvon assmedium » 07. Dez 2018, 15:19

also mit dem Befehl:

Code: Alles auswählen
.Attachments.Add "C:\Users\Test\Desktop\Mappe2.pdf"


kann ich die pdf Datei ja als Anhang hinzufügen. Aber über die Outlook Benutzeroberfläche kann ich die pdf ja auch als Grafik in den Text einfügen. Das muss doch auch mit VBA gehen oder?
assmedium
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 99
Registriert: 10. Mai 2016, 10:05

Re: mit vba eine PDF einfügen

Beitragvon mmarkus » 08. Dez 2018, 11:09

also wenn ich eine PDF händisch einfüge (in den Body der Email), wird kein Bild - sondern lediglich ein Platzhalter - angezeigt - da muss ich schon eine Bilddatei verwenden.
Möglich natürlich, dass das vom PDF Format abhängt.
Grundsätzlich ist es ja möglich in HTML eine Pdf einzubetten.
Da findet sich auch sicher was im Web zu den Prinzipien.
Allerdings, so lange nichts angezeigt wird hilft das wenig.
ms access what else
mmarkus
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1529
Registriert: 16. Apr 2012, 16:07
Wohnort: Oberösterreich

Re: mit vba eine PDF einfügen

Beitragvon assmedium » 08. Dez 2018, 11:31

Hi mmarkus

die folgende Funktion aus Outlook meine ich. Über dieses Objekt einfügen..

Bild

die selbe Funktion gibt es ja auch in Excel und da hat der Makrorecoder eben den folgenden Code aufgezeichnet.

Code: Alles auswählen
    ActiveSheet.OLEObjects.Add(Filename:= _
        "C:\Users\Test\Desktop\Mappe2.pdf", Link:=False, DisplayAsIcon:= _
        False).Select


sowohl auf der grafischen Oberfläche als auch in Vba gibt es da ja die Option DisplayAsIcon:=False. Und dann wird das Bild bzw die Pdf auch als Bild angezeit und nicht nur als Symbol.
Aber leider gibt es in Outlook ja keinen Makrorecoder und ich bekomme das einfach nicht in die mail...
assmedium
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 99
Registriert: 10. Mai 2016, 10:05

Re: mit vba eine PDF einfügen

Beitragvon mmarkus » 08. Dez 2018, 12:11

So geht das.
Hab mal kurz gegoogelt.

Hier eine Lösung für ein normales Bild.
https://excel-macro.tutorialhorizon.com ... ing-excel/

Beispiel mit PDF
http://www.forumtopics.com/busobj/viewtopic.php?t=76263

Teste mal.
Das Thema wurde schon sehr oft behandelt, da gibts viele Codebeispiele - so man denn sucht.
Vielleicht gibts noch Input von unserem Profi Michael Bauer.

LG Markus
ms access what else
mmarkus
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1529
Registriert: 16. Apr 2012, 16:07
Wohnort: Oberösterreich

Re: mit vba eine PDF einfügen

Beitragvon knobbi38 » 08. Dez 2018, 12:43

Hallo,
allerdings nicht als Anhang
Was soll das für einen tieferen Sinn machen? Die Ansicht wird doch durch die Einstellungen beim Mail-Empfänger geregelt?

Ulrich
knobbi38
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1189
Registriert: 02. Jul 2015, 14:23

Re: mit vba eine PDF einfügen

Beitragvon mmarkus » 08. Dez 2018, 12:52

Ich hab jetzt das Beispiel mit dem PDF getestet.
Der Vorteil mit Word: Man muss sich nicht auskennen.
Der Nachteil: Das Mail muss sichtbar geöffnet sein.

Hier mal auf das Wesentliche reduziert:

Code: Alles auswählen
Sub PdfToBody(Mail As Outlook.MailItem, PdfPath As String)

    Mail.GetInspector.WordEditor.InlineShapes.AddOLEObject "AcroExch.Document.7", PdfPath

End Sub


Mehr braucht es nicht.
So wie es aussieht erzeugt Word ein Bild der PDF und fügt das ein.
Das Bild könnte man mit entsprechender Software auch selbst erzeugen dann geht das auch ohne Word.
Super Thema - wieder was gelernt.
Aber der Bauer hat sicher eine bessere Lösung.
LG Markus
ms access what else
mmarkus
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1529
Registriert: 16. Apr 2012, 16:07
Wohnort: Oberösterreich


Zurück zu Outlook Forum (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste