Nur eingeblendete Arbeitsblätter als PDF erstellen
Schritt-für-Schritt-Anleitung
Um alle eingeblendeten Arbeitsblätter als PDF zu speichern, kannst Du den folgenden VBA-Code verwenden. Dieser Code erstellt ein PDF-Dokument, das nur die sichtbaren Blätter enthält:
Sub AlleEingeblendeteBlätterAlsPDF()
Dim ws As Worksheet
Dim wsArray() As String
Dim i As Integer
' Zähle die sichtbaren Blätter
i = 0
For Each ws In ThisWorkbook.Worksheets
If ws.Visible = xlSheetVisible Then
ReDim Preserve wsArray(i)
wsArray(i) = ws.Name
i = i + 1
End If
Next ws
' PDF erstellen
If i > 0 Then
ThisWorkbook.Sheets(wsArray).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="Pfad\zu\deinem\PDF.pdf", Quality:=xlQualityStandard
MsgBox "PDF wurde erstellt!"
Else
MsgBox "Keine sichtbaren Blätter gefunden!"
End If
End Sub
Dieser Code selektiert alle sichtbaren Arbeitsblätter und speichert sie als PDF. Achte darauf, den Pfad zu Deiner PDF-Datei anzupassen.
Häufige Fehler und Lösungen
Alternative Methoden
Falls Du keine VBA-Makros verwenden möchtest, kannst Du auch die Funktion „Drucken“ in Excel nutzen:
- Blende die gewünschten Blätter ein.
- Gehe zu „Datei“ > „Drucken“.
- Wähle „Microsoft Print to PDF“ als Drucker aus.
- Klicke auf „Drucken“ und speichere die Datei.
Diese Methode ist einfach und benötigt keine Programmierkenntnisse.
Praktische Beispiele
Wenn Du beispielsweise eine Excel-Tabelle mit mehreren Blättern hast, von denen nur einige sichtbar sind, kannst Du den oben genannten VBA-Code verwenden, um alle sichtbaren Blätter als PDF zu speichern. Du kannst auch die Funktion „Excel Arbeitsmappe als PDF speichern“ nutzen, um schnell eine PDF zu erstellen, die alle Blätter umfasst.
Tipps für Profis
-
PDF in eine bestimmte Größe anpassen: Mit ActiveSheet.ExportAsFixedFormat kannst Du die Qualität und das Layout der PDF anpassen. Experimentiere mit den Parametern, um die beste Qualität zu erreichen.
-
Einzelne Seiten speichern: Wenn Du nur eine bestimmte Seite als PDF speichern möchtest, kannst Du ActiveSheet.Range("A1:D20").ExportAsFixedFormat verwenden, um einen bestimmten Bereich zu exportieren.
FAQ: Häufige Fragen
1. Wie kann ich alle Arbeitsblätter in einer Excel-Datei als PDF speichern?
Du kannst den Code anpassen, indem Du ThisWorkbook.Sheets anstelle von ThisWorkbook.Sheets(wsArray) verwendest.
2. Kann ich die PDF-Datei direkt per E-Mail versenden?
Ja, Du kannst den VBA-Code so erweitern, dass er die PDF-Datei automatisch an eine E-Mail anhängt, indem Du die Outlook-Objektbibliothek verwendest.