HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Entdecke rund 2 Millionen Excel-Lösungen im
Forumsarchiv
Forumbeitrag
Excel-Version des Fragestellers:
2022
Erfahrungslevel des Fragestellers:
Excel gut - VBA bescheiden
Chris
01.07.2026 19:19:08
AW: Verbesserte Version mit Fehlerbehandlung
Dim txt As String
If Range("I1") = "drucken" Then txt = txt & ",A1:I63"
If Range("I64") = "drucken" Then txt = txt & ",A64:I126"
If Range("I127") = "drucken" Then txt = txt & ",A127:I189"
If Range("I190") = "drucken" Then txt = txt & ";A190:I252"
ActiveSheet.PageSetup.PrintArea = Mid(txt, 2)
Dim sPath As String
Dim sFileName As String
Dim sFullPath As String
sPath = ThisWorkbook.Path & "\Archiv\"
If Dir(sPath, vbDirectory) = "" Then MkDir sPath
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sFullPath, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
End Sub


Habe mal etwas probiert. So sieht der Code aktuell aus. Jedoch wird die PDF nicht im neu angelegten Ordner "Archiv" gespeichert.
Als Antwort auf diesen Beitrag
daniel
01.07.2026 18:53:19
AW: Verbesserte Version mit Fehlerbehandlung
Hi
du meinst wahrcheinlich die xlsm, weil xlsx keine Markos enthält.

du kannst den Speichernamen so ermitteln: ThisWorkbook.Path & "\" & "PDF-Dateiname"
(ThisWorkbook ist immer die Mappe, die das Makro enthält
AcitveWorkbook ist die gerade aktive Mappe, also die, die du im Makro zuletzt aktiviert hast, oder oder die zuletzt geöffnete Mappe (nach einem Workbooks.Open ist immer die geöffnte Datei die aktive)

das Dateikürzel (".pdf") solltet du hier weglassen, weil das wird immer automatisch angehängt.
Gruß Daniel
Folgenachrichten
Antwort auf Beitrag erstellen
Bitte einen Anwendernamen ohne @ eingeben.
Bitte das Passwort eingeben.
Bitte eine gültige E-Mail-Adresse eingeben.
Bitte einen Betreff eingeben.
Weitere Optionen
Aktivieren, wenn die Frage/der Beitrag noch nicht beantwortet wurde und unter Listen > Offene Threads erscheinen soll.
Beispieldatei hochladen

Bitte einen Nachrichtentext eingeben.