ExportAsFixedFormat in Excel ohne Speichern
Schritt-für-Schritt-Anleitung
Um eine PDF-Datei mit ExportAsFixedFormat in Excel zu erstellen, ohne sie automatisch zu speichern, kannst du den folgenden VBA-Code verwenden:
Sub ExportPDFWithoutSaving()
Dim FileSelected As Variant
' Wähle den Speicherort für die PDF-Datei
FileSelected = Application.GetSaveAsFilename(InitialFileName:="", filefilter:="PDF files (*.pdf), *.pdf", Title:="Speichern als PDF")
' Überprüfe, ob der Benutzer den Vorgang abgebrochen hat
If FileSelected = False Then
MsgBox "Vorgang abgebrochen"
Exit Sub
End If
' PDF exportieren
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=FileSelected, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
End Sub
In diesem Beispiel wird der Benutzer aufgefordert, einen Speicherort für die PDF-Datei auszuwählen. Der Befehl ActiveSheet.ExportAsFixedFormat wird dann verwendet, um die PDF zu erstellen.
Häufige Fehler und Lösungen
Fehler: PDF wird nicht erstellt
- Stelle sicher, dass der
Filename-Parameter korrekt gesetzt ist und nicht leer bleibt.
Fehler: Der Vorgang wird abgebrochen
- Überprüfe, ob der Benutzer tatsächlich einen Speicherort ausgewählt hat oder den Vorgang abgebrochen hat.
Alternative Methoden
Wenn du die PDF-Datei zuerst speichern und dann zur Anzeige öffnen möchtest, kannst du folgenden Code verwenden:
Sub ExportAndDisplayPDF()
Dim Pfad As String
Dim Datei As String
Dim Behalten As Integer
Dim Dlg As FileDialog
Pfad = "X:\Temp\Test\" ' Beispielpfad
Datei = "Mappe1.pdf"
Set Dlg = Application.FileDialog(msoFileDialogFolderPicker)
If Dlg.Show = True Then
Pfad = Dlg.SelectedItems(1) & "\"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=Pfad & Datei, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
Behalten = MsgBox("Datei behalten?", vbYesNo + vbQuestion)
If Behalten = vbNo Then
Kill Pfad & Datei
End If
End If
End Sub
Hier wird die PDF zuerst gespeichert und anschließend wird der Benutzer gefragt, ob die Datei beibehalten werden soll.
Praktische Beispiele
-
PDF ohne Speichern: Verwende den ersten Code, um eine PDF-Datei zu erstellen, ohne einen festen Speicherort anzugeben.
-
PDF speichern und anzeigen: Nutze den zweiten Code, um die Datei zu speichern und dem Benutzer die Möglichkeit zu geben, sie zu löschen.
-
Einbindung von Optionen: Modifiziere die IgnorePrintAreas und IncludeDocProperties, um die Export-Optionen anzupassen.
Tipps für Profis
- Nutze
Application.ScreenUpdating = False, um das Flackern des Bildschirms während des Exports zu vermeiden.
- Experimentiere mit verschiedenen
Quality-Einstellungen wie xlQualityMinimum oder xlQualityStandard, um die Dateigröße zu optimieren.
- Stelle sicher, dass du alle relevanten Parameter in
ExportAsFixedFormat gründlich verstehst, um die bestmöglichen Ergebnisse zu erzielen.
FAQ: Häufige Fragen
1. Wie kann ich die PDF automatisch öffnen?
Um die PDF nach dem Export automatisch zu öffnen, setze den Parameter OpenAfterPublish auf True.
2. Was ist der Unterschied zwischen xlTypePDF und xlTypeXLSX?
xlTypePDF exportiert die Datei als PDF, während xlTypeXLSX das Excel-Dokument im Excel-Format speichert.