Hallo zusammen,
leider habe ich noch nicht viel Erfahrung mit Makros bzw. VBA gesammelt und habe nun durch einige Foreneinträge und Youtube-Tutorials folgendes Makro geschrieben:
Code:
Sub PDFDatei()
'Tabelle als PDF speichern
ThisWorkbook.ExportAsFixedFormat xlTypePDF, _
Filename:="C:\Users\PC\Desktop\Bestellung.pdf", _
OpenAfterPublish:=False
Application.Dialogs(xlDialogSendMail).Show
End Sub
Wenn ich dieses Makro ausführe, wird zwar ein PDF in dem Verzeichnis erstellt und eine Mail in Thunderbird geöffnet, allerdings hängt hier nun die Exceldatei im Anhang.
Was habe ich falsch gemacht?
Kann man dem Makro und auch noch sagen, dass er eine Emfängermailadresse eintragen soll und ein Betreff bzw. Text schreiben soll?
VG
Marco
Hallöchen,
Probier mal
Application.Dialogs(xlDialogSendMail).Show Empfänger, Betreff
Allerdings habe ich kein Thunderbird ...
Hallo, :19:
wenn du
ein Tabellenblatt als
PDF versenden möchtest, dann so (
getestet): :21:
Code:
Option Explicit
Public Sub Main()
Dim strResult As String
Dim strTMP As String
With ThisWorkbook.Worksheets("Sheet1")
.ExportAsFixedFormat xlTypePDF, Filename:="C:\Temp\Bestellung.pdf", OpenAfterPublish:=False
End With
strTMP = "E:\PortableApps\ThunderbirdPortable\ThunderbirdPortable.exe "
strResult = "-compose to='abc@hier.de',subject='Dein Betreff',body='Bodytext',attachment='File:///C:/Temp/Bestellung.pdf'"
Shell strTMP & strResult, vbNormalFocus
End Sub
Den
Tabellenblattnamen und den
Pfad bzw. auch den
Namen der EXE-Datei musst du anpassen (
ich arbeite mit der Portablen Version).
(15.10.2019, 08:22)Case schrieb: [ -> ]Hallo, :19:
wenn du ein Tabellenblatt als PDF versenden möchtest, dann so (getestet): :21:
Code:
Option Explicit
Public Sub Main()
Dim strResult As String
Dim strTMP As String
With ThisWorkbook.Worksheets("Sheet1")
.ExportAsFixedFormat xlTypePDF, Filename:="C:\Temp\Bestellung.pdf", OpenAfterPublish:=False
End With
strTMP = "E:\PortableApps\ThunderbirdPortable\ThunderbirdPortable.exe "
strResult = "-compose to='abc@hier.de',subject='Dein Betreff',body='Bodytext',attachment='File:///C:/Temp/Bestellung.pdf'"
Shell strTMP & strResult, vbNormalFocus
End Sub
Den Tabellenblattnamen und den Pfad bzw. auch den Namen der EXE-Datei musst du anpassen (ich arbeite mit der Portablen Version).
Hallo Case,
perfekt das funktioniert!
Jetzt habe ich Blut geleckt und mich interessiert, ob der Body auch mehrzeilig eingefügt werden kann?
Beispiel:
Sehr geehrte Damen und Herren,
anbei erhalten Sie die aktuelle Bestellung.
Mit freundlichen Grüßen
Außerdem steht die Kundennummer immer in Zelle D7 und der Firmenname in E10.
Kann man den Betreff auch noch automatisieren?
Beispiel:
Bestellung Kundennummer(D7) Firmenname(E10)
VG
Marco
(15.10.2019, 10:28)marcrob schrieb: [ -> ]Hallo Case,
perfekt das funktioniert!
Jetzt habe ich Blut geleckt und mich interessiert, ob der Body auch mehrzeilig eingefügt werden kann?
Beispiel:
Sehr geehrte Damen und Herren,
anbei erhalten Sie die aktuelle Bestellung.
Mit freundlichen Grüßen
Außerdem steht die Kundennummer immer in Zelle D7 und der Firmenname in E10.
Kann man den Betreff auch noch automatisieren?
Beispiel:
Bestellung Kundennummer(D7) Firmenname(E10)
VG
Marco
Kann man vielleicht auch noch den Dateinamen der gespeicherten Datei variabel gestalten?
Bestellung Kundennummer(D7) Firmenname(E10)
VG Marco
Zitat:bitte zitiere nicht immer den ganzen vorhergehenden Beitrag.
Alles klar!
Vielen Dank Case!
Das funktioniert genau so wie ich es mir vorgestellt habe :19: