möchte aus meiner Excel Datei ein Blatt speichern als PDF mit dem Blattnamen un was in C3 steht.
Geht sowas. Für Hilfe wäre ich dankbar.
Gruß Kerstin
Sub saveAsPDF()
Dim vntFile As Variant
vntFile = Application.GetSaveAsFilename(ThisWorkbook.Path & "\" & ActiveSheet.Name & _
ActiveSheet.Range("C3").value & ".pdf", _
"PDF Dateien (*.pdf), *.pdf", Title:="Als PDF Speichern")
If vntFile False Then
ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=vntFile, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
End If
End Sub
Matze
Sub saveAsPDF()
Dim vntFile As Variant
vntFile = Application.GetSaveAsFilename(ThisWorkbook.Path & "\" & ActiveSheet.Name & "_" & _
ActiveSheet.Range("C3").Value & "_" & _
ActiveSheet.Range("B2").Value & ".pdf", "PDF Dateien (*.pdf), *.pdf", Title:="Als PDF _
Speichern")
If vntFile False Then
ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=vntFile, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True ' wenn nicht angezeigt werden soll False
End If
End Sub
Matze
Sub saveAsPDF()
Dim vntFile As Variant
vntFile = Application.GetSaveAsFilename(ThisWorkbook.Path & "\" & ActiveSheet.Name & "_" & _
ActiveSheet.Range("C3").Value & "_" & _
Mid(Range("b2"), 7) & ".pdf", "PDF Dateien (*.pdf), *.pdf", Title:="Als PDF Speichern")
If vntFile False Then
ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=vntFile, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True ' wenn nicht angezeigt werden soll False
End If
End Sub
Das 2013 bleibt dabei stehen , im Speichername steht dann Irgendwasdavor_April 2013.pdf
Makro aktivieren: Öffne Excel und gehe zu Entwicklertools
> Visual Basic
, um den VBA-Editor zu öffnen.
Neues Modul einfügen: Klicke mit der rechten Maustaste auf VBAProject (DeineDatei.xlsx)
und wähle Modul einfügen
.
Code einfügen: Füge den folgenden Code in das Modul ein:
Sub saveAsPDF()
Dim vntFile As Variant
vntFile = Application.GetSaveAsFilename(ThisWorkbook.Path & "\" & ActiveSheet.Name & "_" & _
ActiveSheet.Range("C3").Value & "_" & Mid(Range("B2"), 7) & ".pdf", "PDF Dateien (*.pdf), *.pdf", Title:="Als PDF Speichern")
If vntFile <> False Then
ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=vntFile, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End If
End Sub
Makro ausführen: Schließe den VBA-Editor und gehe zurück zu Excel. Führe das Makro über Entwicklertools
> Makros
aus.
Fehler: #Wert! beim Ausführen des Makros
Lösung: Stelle sicher, dass die Zelle B2 tatsächlich einen Text im Format "Datum April 2013" enthält. Überprüfe die Formatierung der Zelle.
Fehler: PDF wird nicht gespeichert
Lösung: Prüfe, ob der Pfad, den du für das Speichern angibst, existiert. Wenn nicht, erstelle den entsprechenden Ordner.
Einzelnes Blatt als PDF speichern: Du kannst auch ohne Makro direkt in Excel ein Blatt als PDF speichern. Gehe zu Datei
> Speichern unter
, wähle das Format PDF und stelle sicher, dass du nur das aktive Blatt auswählst.
Excel Arbeitsmappe als PDF speichern: Um die gesamte Arbeitsmappe in ein PDF zu exportieren, gehe zu Datei
> Exportieren
> PDF/XPS-Dokument erstellen
.
Beispiel 1: Du möchtest ein Tabellenblatt mit dem Namen "Umsatz" und dem Inhalt von C3 (z.B. "Q1 2023") sowie dem Datum aus B2 (z.B. "April 2023") speichern. Das gespeicherte PDF wird den Namen "Umsatz_Q1 2023_April 2023.pdf" haben.
Beispiel 2: Wenn du eine Excel-Datei mit mehreren Blättern hast und jedes Blatt einzeln als PDF speichern möchtest, kannst du eine Schleife im VBA-Code verwenden, um alle Blätter durchzulaufen und sie nacheinander als PDF zu speichern.
Verwendung von Variablen: Um den Code flexibler zu gestalten, kannst du Variablen für die Zellreferenzen (z.B. C3 und B2) verwenden, damit du diese einfacher anpassen kannst.
PDF-Exportoptionen: Experimentiere mit den Optionen im ExportAsFixedFormat
-Befehl, wie Quality
, um die Qualität der PDF-Datei zu optimieren.
Dokumentation: Halte deine Makros gut dokumentiert, damit du oder andere Benutzer später verstehen, was der Code macht.
1. Kann ich mehrere Blätter gleichzeitig als PDF speichern?
Ja, du kannst einen VBA-Code verwenden, der alle Blätter durchläuft und sie nacheinander als PDF speichert.
2. Wie kann ich den Speicherort für das PDF ändern?
Ändere den Pfad in der GetSaveAsFilename
-Funktion im VBA-Code, um den gewünschten Speicherort anzugeben.
3. Wie kann ich sicherstellen, dass nur die sichtbaren Bereiche gespeichert werden?
Verwende die Option IgnorePrintAreas:=False
im ExportAsFixedFormat
-Befehl, um nur die druckbaren Bereiche zu exportieren.
4. Ist es möglich, ein Arbeitsblatt in ein anderes Format als PDF zu speichern?
Ja, du kannst die Methode SaveAs
verwenden, um das Arbeitsblatt in verschiedenen Formaten zu speichern, z.B. als Excel-Datei oder CSV.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen