PDF drucken und Dateiname sowie Pfad in Excel festlegen
Schritt-für-Schritt-Anleitung
Um ein Excel-Sheet als PDF zu drucken und dabei den Dateinamen sowie den Pfad festzulegen, kannst du folgenden VBA-Code verwenden. Dieser Code kombiniert die Funktionalität zum Speichern unter mit dem PDF-Drucken.
-
Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
-
Füge ein neues Modul hinzu: Rechtsklick auf "VBAProject (dein Dokument)" > Einfügen > Modul.
-
Kopiere und füge den folgenden Code in das Modul:
Sub PDFDruckenMitDateinamen()
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogSaveAs)
Dim pfad As String
With fd
.Title = "Speichern als"
.Filters.Clear
.Filters.Add "PDF-Dateien", "*.pdf"
If .Show = -1 Then
pfad = .SelectedItems(1) ' gewählter Speicherort
Else
MsgBox "Der Vorgang wurde abgebrochen."
Exit Sub
End If
End With
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:="Adobe PDF auf Ne03:", _
PrintToFile:=True, Collate:=True, PrToFileName:=pfad
Set fd = Nothing
End Sub
-
Schließe den VBA-Editor und kehre zu Excel zurück.
-
Führe das Makro aus: ALT + F8, wähle PDFDruckenMitDateinamen und klicke auf "Ausführen".
Mit diesem Code kannst du die Funktion „PDF drucken mit Dateinamen“ in Excel effektiv nutzen.
Häufige Fehler und Lösungen
Alternative Methoden
Eine alternative Methode, um PDF-Dateien mit bestimmten Namen zu drucken, wäre die Verwendung der ExportAsFixedFormat-Methode. Hier ein Beispiel:
Sub ExportAlsPDF()
Dim pfad As String
pfad = Application.ActiveWorkbook.Path & "\MeinDokument.pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=pfad, Quality:=xlQualityStandard
End Sub
Diese Methode erfordert keinen Dialog zum Speichern und kann direkt einen vordefinierten Pfad verwenden.
Praktische Beispiele
Angenommen, du möchtest ein Arbeitsblatt namens "Bericht" als PDF speichern. Dann könntest du den Code entsprechend anpassen:
Sub BerichtAlsPDF()
Dim pfad As String
pfad = "C:\DeinPfad\Bericht.pdf"
Worksheets("Bericht").ExportAsFixedFormat Type:=xlTypePDF, Filename:=pfad, Quality:=xlQualityStandard
End Sub
Mit diesem Ansatz kannst du den PDF-Titel anders als den Dateinamen festlegen, indem du den Inhalt des Arbeitsblattes anpasst.
Tipps für Profis
-
Dateiname anpassen: Du kannst den Dateinamen dynamisch gestalten, indem du z.B. das aktuelle Datum hinzufügst:
pfad = Application.ActiveWorkbook.Path & "\Bericht_" & Format(Date, "YYYYMMDD") & ".pdf"
-
Automatisierung: Integriere den PDF-Druck in einen größeren Automatisierungsprozess, indem du diesen Code in ein bestehendes Makro einfügst.
FAQ: Häufige Fragen
1. Wie kann ich den Dateipfad für das PDF-Dokument festlegen?
Du kannst den Pfad im Code definieren, z.B. pfad = "C:\DeinPfad\DeinDateiname.pdf".
2. Kann ich einen anderen Druckertreiber verwenden?
Ja, ersetze einfach den Druckernamen in ActivePrinter mit dem Namen des gewünschten Druckers.
3. Was ist, wenn ich den PDF-Namen anders als den Dateinamen haben möchte?
Du kannst den Titel im PDF-Dokument anpassen, indem du die Inhalte des Arbeitsblattes änderst oder einen spezifischen Titel in den PDF-Einstellungen angibst.
4. Funktioniert dieser Code in allen Excel-Versionen?
Der Code sollte in den meisten aktuellen Excel-Versionen funktionieren, insbesondere ab Excel 2010.