Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1876to1880
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

mehrere Tab.blätter in pdf drucken VBA

mehrere Tab.blätter in pdf drucken VBA
08.04.2022 19:06:02
Stephan
Hallo an die VBA Profis,
ich brauche bitte Hilfe bei einer VBA-Umsetzung und bin in x Beiträgen nicht fündig geworden, meine gesuchte Variante habe ich nicht gefunden...
Ich brauche bitte 2 einzelne Makros:
Makro 1:
6 Tabellenblätter sollen als 1 PDF gedruckt werden: "Name1", "Name 2" usw.
mit dem "Adobe PDF" Drucker
Pfad: D:\Benutzer\usw.
Dateiname: steht in Tabellenblatt "Daten" H4 (Text und Datum kombiniert als Formel : ="xyz "&TEXT(HEUTE();"TT.MM.JJ")
pdf muss nach der Erstellung nicht geöffnet werden
Makro 2:
2 Tabellenblätter sollen als 2 PDF gedruckt werden:
selbes Vorgaben zu Drucker / Pfad usw. wie oben
Tabellenblatt "Name8" mit Dateiname in Tabellenblatt "Daten" H9
Tabellenblatt "Name9" mit Dateiname in Tabellenblatt "Daten" H14
Danke vorab für eure Hilfe.
Gruß Stephan

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mehrere Tab.blätter in pdf drucken VBA
08.04.2022 19:22:27
Nepumuk
Hallo Stephan,
benutze den eingebauten PDF-Drucker von Office.
So geht das für 6 Tabellen:

Public Sub Makro1()
Const FOLDER_PATH As String = "D:\Benutzer\"
Dim lngIndex As Long
Dim blnReplace As Boolean
For lngIndex = 1 To 6
Call Worksheets("Name" & CStr(lngIndex)).Select(Replace:=blnReplace)
blnReplace = True
Next
Call Worksheets("Name1").ExportAsFixedFormat(Type:=xlTypePDF, Filename:=FOLDER_PATH & _
Worksheets("Daten").Range("H4").Text, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False)
Call Worksheets("Name1").Select
End Sub
Das kannst du nun selbst auf zwei Tabellen ändern.
Gruß
Nepumuk
Anzeige
AW: mehrere Tab.blätter in pdf drucken VBA
08.04.2022 19:41:18
Stephan
Hallo Nepumuk, danke für die Anleitung.
Bei
Call Worksheets("Name" & CStr(lngIndex)).Select(Replace:=blnReplace)
gehe ich davon aus, dass es auch "Name1" heißen muss? Das war nur ein Beispiel, aber ich habe hier meinen ersten Tabellenblattnamen eingesetzt, genauso wie überall wo "Name1" steht.
Ich erhalte den Laufzeitfehler 9 - Index außerhalb des gültigen Bereichs.
?
Und wie schreibe ich dann den Code, dass 2 Blätter in 2 Dateien gespeichert werden? Das ist mir als Laie nicht klar. Einfach nochmal mit geänderten Daten drunter?
AW: mehrere Tab.blätter in pdf drucken VBA
08.04.2022 20:12:24
Nepumuk
Hallo Stephan,

gehe ich davon aus, dass es auch "Name1" heißen muss?
NEIN.
Gruß
Nepumuk
Anzeige
AW: mehrere Tab.blätter in pdf drucken VBA
08.04.2022 20:16:58
Stephan
ok, aber der Laufzeitfehler bleibt trotzdem...
AW: mehrere Tab.blätter in pdf drucken VBA
08.04.2022 20:24:29
Nepumuk
Hallo Stephan,
ich habe das Makro nach deiner Beschreibung der Datei erstellt. Wenn es nicht passt, dann solltest du die Mappe hochladen damit ich herausbekommen kann, woran es liegt.
Gruß
Nepumuk
AW: mehrere Tab.blätter in pdf drucken VBA
08.04.2022 20:29:44
Stephan
ok, dazu muss ich erst meine ganzen Daten rausnehmen
hier die Datei mit Beispieldaten
08.04.2022 21:43:12
Stephan
hier die Datei mit umbenannten Beispieldaten:
https://www.herber.de/bbs/user/152361.xlsm
Druck in 1 pdf Datei: Tabellnblätter "Alle" bis inkl. "Gruppe 5"
Druck in 2 pdf Dateien: Tabellenblätter "Übersicht 1" und "Übersicht 2"
Anzeige
Nepumuk, ich hab schon, glaub ich
09.04.2022 06:58:29
Oberschlumpf
Hi Stephan
vielleicht weißt du es ja bei deiner nächsten, neuen Frage noch: gleich sofort MIT Bsp-Datei is eigtl immer besser!
(hast ja gesehen, was rauskommt, wenn Bsp-Datei nich vorhanden is)
Also, ich hab mein Glück auch mal versucht und den Code von Nepumuk in kleinen Teilen übernommen.
hier meine Datei:
https://www.herber.de/bbs/user/152364.xlsm
Sie enthält sowohl Makro1 für die gewünschten 6 Sheets in nur 1 PDF-Datei, als auch Makro2 für das Speichern von 2 Sheets in jeweils nur 1 PDF-Datei.
PDF-Name für 6 Sheets = "6 Sheets in PDF.pdf", weil du nich angegeben hast, wie denn diese PDF-Datei heißen soll - du musst den PDF-Namen also im Code noch anpassen
PDF-Namen für die 2 einzelnen PDF-Dateien = "Ü1 in PDF.pdf" und "Ü2 in PDF.pdf" - auch hier musst du die Namen im Code anpassen, weil...deine Angaben wieder fehlten.
Ach ja, du musst im Code auch noch den Speicherpfad anpassen, weil ich ja deinen Pfad auf meinem Computer nicht habe - aber ich hab das im Code kommentiert, wo du den Pfad anpassen musst.
Bei mir wird nach deinen Wünschen alles erledigt.
Konnte ich auch dir helfen?
Ciao
Thorsten
Anzeige
klappt, aber noch 1 Frage :-)
09.04.2022 09:43:23
Stephan
Lieber Thorsten,
vielen Dank für deinen frühen Einsatz.
Zu meiner Verteidigung :-) ich bin davon ausgegangen, dass die Tabellen samt Inhalt nicht sonderlich relevant sind, wenn es schlicht ums Drucken / pdf-Speichern geht. Bei 9 Blättern mit Inhalt bin ich ja auch etwas beschäftigt, alles rauszunehmen... Egal, wieder was gelernt.
Nur eine Sache noch:
Ich hatte die Dateinamen in meinem 1. Kommentar angegeben (und Nepumuk hatte ja auch einen von drei in seinen Code geschrieben) - im Tabellenblatt "Daten" steht er für die 6 Sheets in H4, für Sheet Ü1 in H9 und für Sheet Ü2 in H14. Er ändert sich immer, weil es eine Kombination aus Text und Datum ist.
Als VBA Laie krieg ich es leider nicht hin, Nepumuks Code mit deinem hier zu vereinen. Wenn du mir das bitte noch zeigen würdest... Danke, Gruß Stephan
Anzeige
AW: klappt, aber noch 1 Frage :-)
09.04.2022 10:30:07
Oberschlumpf
Hi Stephan,
uuppppss - ok - mein Fehler!
Ja, du hast recht, und ich hatte leider vergessen, dass die Infos zu den PDF-Dateinamen schon von dir im ersten Beitrag angegeben waren...sorry dafür!
Hier nun die korrigierte Datei
https://www.herber.de/bbs/user/152366.xlsm
JETZT müsste auch der Name für jede im Code erstellte PDF-Datei stimmen, oder?
Ciao
Thorsten
AW: klappt, aber noch 1 Frage :-)
09.04.2022 19:32:24
Oberschlumpf
gibbs denn noch ne antwort? :-//
Antwort ging verloren...
09.04.2022 20:04:39
Stephan
Vielen Dank Thorsten.
Ich hatte das heute Vormittag schon geschrieben und abgesendet, aber ich sehe, dass es nicht ankam. Hatt ich bisher auch noch nicht...
Ja, jetzt passt alles. Danke
Anzeige

308 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige