Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Makro Arbeitsblatt als Pdf speichern

Makro Arbeitsblatt als Pdf speichern
23.07.2015 16:48:23
Sebastian
Hallo zusammen.
Seit geraumer Zeit sitze ich nun an einem Makro zu speichern einer Exeldatei und versenden als Email (pdf-Anhang).
Der Dateiname soll aus den Zellen H2, Y2 und Y3 bezogen werden. Als Speicherort soll Desktop verwendet werden. Allerdings variiert der Speicherort aufgrund der Verknüpfung zum Server (verschiedene Benutzer).
Der Email-Empfäger "An" soll frei bleiben, lediglich "CC" soll fest als "Max Mustermann" und "Marie Mustermann" hinterlegt werden. Betreff soll der Dateiname sein.
Hat jemand von euch denn eine Idee, wie ich dieses Makro schreiben könnte?
Vielen Dank für eure Hilfe.
Lieben Gruß, Sebastian

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro Arbeitsblatt als Pdf speichern
23.07.2015 19:09:24
Stefan
Probiere es mal damit:
If ActiveCell.Offset(0, 0) = "" Then
Exit Sub
Else
ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
FileName:="E:\daten\...\" & "Name" & Sheets("Mappe1").Range("D10") & Sheets("Mappe1").Range("D5") & ".pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False

Anzeige
AW: Makro Arbeitsblatt als Pdf speichern
23.07.2015 20:33:25
Sebastian
Danke Stefan für deine Antwort.
Leider funktioniert deine Variante nicht. Fehlerhinweis, dass das Makro nicht ausgeführt werden kann.
Aktuell schaut es bei mir nun so aus:
Sub AlsPDFSpeichern()
Dim pdfName As String
Dim pdfOpenAfterPublish As Boolean
Dim olApp As Object
Rem Rückfragen, ob Datei nach dem Erstellen geöffnet werden soll
If MsgBox("Soll die PDF-Datei nach dem Erstellen angezeigt werden?", vbYesNo, "PDF anzeigen?") = _
vbYes Then pdfOpenAfterPublish = True
Rem Pfad und Name der PDF-Datei
pdfName = Range(H2) & "_" & Range(Y3) & "_" & Range(Y2) & ".pdf"
Rem PDF-Datei erstellen.
ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdfName, _
Quality:=xlQualityStandard, IncludeDocProperties:=False,  _
IgnorePrintAreas:=False, _
OpenAfterPublish:=IIf(pdfOpenAfterPublish, True, False)
Rem Email erstellen
Set olApp = CreateObject("Outlook.Application")
With olApp.CreateItem(0)
.TO = Range("AI2").Value
.CC = "max.mustermann@musterfirma.de" & "marie.mustermann@musterfirma.de"
.Subject = Range("J2").Value
.htmlBody = Range("J3").Value
.Attachments.Add pdfName
.Display
End With
Rem Boolean-Variable "pdfOpenAfterPublish" zurücksetzen
pdfOpenAfterPublish = False
End Sub

Leider funktioniert es nicht, "Lauftzeitfehler 1004, die Methode Range für _Global kann nicht ausgeführt werden."

Anzeige
AW: Makro Arbeitsblatt als Pdf speichern
24.07.2015 06:24:28
mumpel
Hallo!
Zellenbenbezüge müssen in Anführungszeichen. Z.B. Range("H2")
Gruß, René

AW: Makro Arbeitsblatt als Pdf speichern
24.07.2015 12:38:29
Sebastian
Hallo René,
nun klappt es mit der Pdf, vielen Dank.
Leider passiert mit dem Email-Anhang nix mehr. Nun kommt Laufzeitfehler, dass die Datei oder der Dateiname nicht gefunden werden kann.
Die Pdf soll auch keinen festen Pfad bekommen, der Speicherort soll vom User selbst bestimmt werden.
Hat von euch vielleicht jemand ne Idee?

Anzeige
AW: Makro Arbeitsblatt als Pdf speichern
24.07.2015 16:51:09
mumpel
Stichwort: GetSaveAsFileName
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige