HERBERS Excel-Forum - das Archiv

Thema: Mit Word erstellte PDF als Anhang an E-Mail anhängen

Mit Word erstellte PDF als Anhang an E-Mail anhängen
Zipo
Erstmal Hallo an Alle, das ist mein erster Beitrag.

Ich habe eine Excel-Datei für Kunden- und eine für Rechnungsdaten. Aus beiden generiere ich per VBA in Word eine Rechnung, die automatisch als PDF gespeichert wird. Als nächste Station kommt der Versand der Rechnung per E-Mail. Per VBA bekomme ich es hin, dass eine von mir erstellte Outlook-Vorlage geöffnet wird und mit den jeweiligen Daten aus Excel gefüttert wird.

Wie schaffe ich es, das die gerade erstellte PDF-Rechnung dort als Anhang angehängt wird?

Ich hatte gedacht, ich lasse einen Hyperlink der Datei in eine Zelle einfügen und nehme mir dann den Pfad aus der Zelle als Wert für .attachements. Ich bekomme das aber nicht hin. Sollte jemand etwas dazu schreiben, danke schonmal im Vorraus. Nach nunmehr 10 Stunden probieren und Tutorials schauen verzweifel ich so langsam. Wahrscheinlich ist es ganz einfach.

Folgend der Code für die E-Mail-Erstellung.

Sub EMailErstellen()


'Variablen festlegen
Dim oApp As Object
Dim oMail As Object
Dim Zeile As Long

Zeile = ActiveCell.Row

'Richtiges Tabellenblatt aktivieren
Sheets("Rechnungen").Activate

'Late Binding
Set oApp = CreateObject("Outlook.Application")
Set oMail = oApp.CreateItemFromTemplate("Outlook-Vorlage.oft")

'Mail erstellen
With oMail
.Display
.to = Rechnungen2023.Cells(Zeile, 6).Value
End With

End Sub
AW: Mit Word erstellte PDF als Anhang an E-Mail anhängen
ralf_b
du benötigst doch nur den Pfad zur Datei und .attachements.add Pfadangabe. 1. Googelergebnis zu "VBA Email mit Anhang" z.b. https://www.dalecom.de/e-mail-mit-anhang-versenden-uber-vba/ zeigt wie es geht.

das .display würde ich ans Ende der Bearbeitung stellen.
AW: Mit Word erstellte PDF als Anhang an E-Mail anhängen
Zipo
"du benötigst doch nur den Pfad zur Datei und .attachements.add Pfadangabe"

Das stimmt. Ich hatte das schon probiert, habe aber nicht gemerkt, dass der Editor mir nach dem Einfügen des Strings noch zweimal " hinten angefügt hat. Ohne die " geht es wunderbar. Jetzt kann ich sogar die in der E-Mail-Vorlage gesetzten Textmarken ansprechen, allerdings nur dann, wenn Outlook, bevor die E-Mail erstellt wird bereits geöffnet ist.

Danke.