VBA > PDF erzeugen > mit div. Seiten
30.09.2025 13:13:39
BugSimpson
ich nutze aktuell eine Funktion (s. weiter unten) um aus einem Excelblatt eine PDF zu erzeugen. Das ganze funktioniert soweit so gut.
Nun habe ich auf einem Blatt mehrere "virtuelle Seiten", die ich aber nicht alle "drucken" möchte. Die Funktion die mir die PDF erzeugt beherrscht allerdings nur das erzeugen von einer gewissen "Range" bsp. Seite 1 - Seite 5.
Möchte ich jedoch Seite 2 oder Seite 3 nicht mit drucken, funktioniert das so nicht. Alles soll jedoch in einer PDF zu sehen sein.
Ist das möglich?
' Erstellt von dem aktuellen Blatt eine PDF
Public Function CreatePDF(Name As String, Path As String, ws As Worksheet, Dialog As Boolean, Open_ As Boolean, PgeFrm As Integer, PgeTo As Integer) As Boolean
On Error GoTo ErrorHandler:
Dim strfile As String
Dim myFile As Variant
Dim sTimestamp As String
Dim OldPath As String
sTimestamp = Str(DateTime.Now)
ws.PageSetup.Zoom = False
ws.PageSetup.FitToPagesTall = 1
ws.PageSetup.FitToPagesWide = 1
SetCurrentDirectoryA Path
strfile = Name & ".pdf"
'Ist die Datei eventuell schon vorhanden?
Dim RetPath As String
If (modFile.IsFileExists(strfile, Path, RetPath) = True) Then
If (MsgBox(strfile & " " & "ist schon vorhanden!." & vbLf & "Soll diese überschrieben werden?.", vbInformation Or vbYesNo) = vbNo) Then
MsgBox "Drucken abgebrochen!.", vbInformation Or vbOKOnly, "PDF Modul"
Exit Function
End If
End If
If (Dialog) Then
myFile = Application.GetSaveAsFilename _
(InitialFileName:=strfile, _
FileFilter:="PDF Dateien (*.pdf), *.pdf", _
title:="Bitte unter Wartungsprotokolle ablegen!")
Else
myFile = strfile
End If
If myFile = False Then
MsgBox "Druckvorgang abgebrochen.", vbInformation, "PDF - Modul"
CreatePDF = False
Exit Function
End If
ws.Visible = xlSheetVisible
ws.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
myFile, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=Open_, From:=PgeFrm, To:=PgeTo
CreatePDF = True
ws.Visible = xlSheetHidden
Exit Function
ErrorHandler:
modLog.Fill "CreatePDF()", Err.Description, frmWartungsmanager.ListBox3
End Function
Anzeige