Clever-Excel-Forum

Normale Version: PDF automatisch aus Arbeitsmappe erstellen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo zusammen,

ich bin ein absoluter Neuling in Excel. 
Es muss regelmäßig ein Prüfprotokoll erstellt werden und als PDF abgespeichert werden.
Der Dateiname setzt sich aus eingetragenem Datum und eingetragener Wellenpaar Nr. zusammen

Wellenpaar Nr. befindet sich in Zelle C2 und Datum in Zelle G2

Dateiname Bsp.: 12.03.24-52009

das ganze soll dann per Klick auf einen Button in einem Pfad auf dem Server abgelegt werden. (wie ich den Button erstelle und ein Makro zuweise, weiß ich)

M:\Ordner1\Ordner2\Ordner3\Ordner4

wie realisiere ich dies über ein Makro? 

vielen Dank schon mal
Hi,

da reicht im Grunde genommen eine Programmzeile:
Code:
ActiveSheet.ExportAsFixedFormat xlTypePDF, "M:\Ordner1\Ordner2\Ordner3\Ordner4\" & Range("G2").Text & "-" & Range("C2")

Wobei ich das Datum anders formatieren würde:
Code:
ActiveSheet.ExportAsFixedFormat xlTypePDF, "M:\Ordner1\Ordner2\Ordner3\Ordner4\" & Format(Range("G2"), "yyyy-mm-dd") & "_" & Range("C2")
Damit lautete der Dateiname dann "2024-03-12_12345.pdf"
Danke für die schnelle Antwort,

ich habe den Code mit dem entsprechenden Dateipfad in Visual Basic eingefügt und einer Schaltfläche zugeordnet. allerdings wird keine PDF erzeugt. 
Der Code gilt für die gesamte Arbeitsmappe bei der der Druckbereich festgelegt ist. 

Sub PDFSpeichern()

ActiveSheet.ExportAsFixedFormat xlTypePDF, "M:\Ordner\Ordner\Ordnerdn" & Format(Range("G2"), "yyyy-mm-dd") & "_" & Range("C2")

End Sub
Hi,

wie der Name ActiveSheet schon sagt, wird hiermit nur das aktive Blatt gespeichert. Wenn du die ganz Datei speichern willst, dann musst du statt dessen ein Workbook-Objekt, z.B. ThisWorkbook, verwenden. Dann musst du allerdings bei den beiden Range noch das zugehörige Blatt davor setzen:
Code:
ThisWorkbook.ExportAsFixedFormat xlTypePDF, "M:\Ordner\Ordner\Ordner\" & Format(Worksheets("Blattname").Range("G2"), "yyyy-mm-dd") & "_" & Worksheets("Blattname").Range("C2")

Grade ist mir noch aufgefallen, dass du am Ende deines Pfades keinen Backslash stehen hast. Der muss dort natürlich hin! Sonst wird deine Datei eine Stufe höher als „Ordner2024-03-12_12345.pdf“ gespeichert!
Guten Morgen,

bekomme leider die Fehlermeldung "Wir haben nichts zum Drucken gefunden" 
Habe den Druckbereich festgelegt.
Hi,

dann ist in deiner Datei keine Zelle im Druckbereich gefüllt. Falls es das nicht ist, wird es spätestens jetzt Zeit für eine Datei, in der der Fehler auftritt.
Ich habe dir eine PN geschickt
Hi,

schön für dich, ich werde aber mit Sicherheit keine Datei von irgendeiner dubiosen Fileschleuder herunterladen. Außerdem ist die Wahrscheinlichkeit, dass dir geholfen werden kann, wesentlich größer, wenn jeder hier die Chance hat sich die Datei anzusehen.

Wie gesagt, ich habe die Datei nicht runter geladen.

Zum Thema "Kann ich nicht öffentlich hochladen": www.excel-ist-sexy.de/upload-nicht-moeglich (nicht von mir, aber trifft es genau)

Lade die Datei hier hoch oder lass es bleiben. Deine Entscheidung.
Entschuldige, ich hatte den Upload Bereich unterhalb nicht gesehen, deswegen der Upload extern.
Hallöchen,

Da in Deinem Druckbereich das "Formular" enthalten ist, aber keine Daten, wird Dein Druckmakro wohl irgendwo irgendwas prüfen und Dir wegen des negativen Ergebnisses die Meldung senden. Dein Druckmakro hast Du vermutlich in Deiner Personal.xlsb und die enthaltenen Makros "PERSONAL.XLSB'!Druckbereich" und PERSONAL.XLSB'!PDFSpeichern sind hier nicht ersichtlich.
Seiten: 1 2