AW: Ausdruck im Format 8,5 x 5,4 cm
05.02.2025 15:21:03
Volker Bunge
Hallo Zusammen,
mit dem eDocPrinter PDF Pro Ver 7.23 Build 7339 habe ich es jetzt hinbekommen.
Eine Sache muss man aber vorher noch manuell einstellen: Nämlich die gewünschte Papiergröße
Dazu einfach "Datei, Drucken" auswählen und dann unter der Druckerauswahl unten rechts auf "Druckereigenschaften" klicken. Auf der ersten Registerseite "Seite" gibt es rechts neben der Standardpapierformat einen Button "Neu". Dort nun die Felder wie gewünscht eintragen und mit "OK" bestätigen.
Das neue Format sollte jetzt als aktives Format angezeigt werden. Danach kann der Druck erst einmal abgebrochen werden.
Nun mit F11 in den VBA-Editor gehen und das Direktfenster mit STRG+G aufrufen und folgenden Befehl eintragen "? activesheet.PageSetup.PaperSize". Als Ergebnis kam dann bei mir 457 raus. Diesen Wert gegen meinen Wert tauschen.
Jetzt kann man mit folgenden Code, zwei Tabellenblätter als Visitenkarte ausdrucken.
Sub Visitenkarte_als_PDF()
' Hilfsvariablen festlegen
Dim DBereich As String
Dim DatPfad As String
Dim Eingabeseite as integer = 1
Dim Vorderseite as integer = 2
Dim Rueckseite as integer = 3
' Druckbereiche festlegen
DBereich = "$J$4:$K$17"
' Dateipfad für die PDF-Datei festlegen
DatPfad = "C:\Temp\Visitienkarte.pdf"
' Wähle den EDocPrinter aus
Application.ActivePrinter = "eDocPrinter PDF Pro auf Ne05:"
' Nun die Vorderseite einstellen
Sheets(Vorderseite).Select
Range(DBereich).Select
ActiveWindow.Zoom = 100
With Worksheets(Vorderseite).PageSetup
.PrintArea = DBereich
.Orientation = xlLandscape
.PaperSize = 457 ' Visitenkarte (selbst erstellte Papiergröße 85 x 54 mm)
End With
' und jetzt die Rückseite
Sheets(Rueckseite).Select
Range(DBereich).Select
ActiveWindow.Zoom = 100
With Worksheets(Rueckseite).PageSetup
.PrintArea = DBereich
.Orientation = xlLandscape
.PaperSize = 457 ' Visitenkarte (selbst erstellte Papiergröße 85 x 54 mm)
End With
' Zum Druckend die beiden Seiten auswählen
Sheets(Array(Vorderseite, Rueckseite)).Select
' und die Vorderseite anzeigen
Sheets(Vorderseite).Activate
' Nun den Export als PDF-Datei einleiten
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
DatPfad, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
' Nun die Eingabemaske anzeigen
Sheets(Eingabe).Select
Range("C2").Select
' und den Benutzer über das Ergebnis informieren
MsgBox ("PDF Datei erstellt und im Verzeichnis: " & vbCrLf & vbCrLf & DatPfad & vbCrLf & vbCrLf & "abgespeichert.")
' Zum Schluss noch die Seitengröße wieder auf den Ursprung einstellen
Worksheets(Vorderseite).PageSetup.PaperSize = xlPaperA4
Worksheets(Rueckseite).PageSetup.PaperSize = xlPaperA4
End Sub
Viel Spass nun beim Testen.
Gruß
Volker