Access-o-Mania

Access-Forum (Deutsch/German) => Bericht => Thema gestartet von: Paschul am Oktober 09, 2022, 18:54:19

Titel: PDF Ausgabe
Beitrag von: Paschul am Oktober 09, 2022, 18:54:19
Hallo ich bin neu hier und benötige Unterstützung. Ich gebe pdf Dateien per Veba auf Drucker aus. Das klappt auch. Nun habe ich eine neue Liste, die soll im Querformat ausgegeben werden. Aber der Drucker gibt alles nur im Hochformat aus.
Mit Orientation habe ich probiert, das funkt nich
Vielen Dank und gesund bleiben
Gruß Paschul
Titel: Re: PDF Ausgabe
Beitrag von: MzKlMu am Oktober 09, 2022, 19:02:03
Hallo,
was ist Veba? Oder meinst Du VBA ?
Im Entwurf des Berichtes muss auch die Seitenrichtung auf Querformat eingestellt werden.
Titel: Re: PDF Ausgabe
Beitrag von: Paschul am Oktober 09, 2022, 21:31:20
Hallo, sorry es sollte natürlich Vba heißen. Im Entwurf ist quer eingetragen. Ich kann den Bericht auch von einem Formular drucken, da kommt er im Querformat. Hilft es wenn ich den Code poste??
Gruß Paschul
Titel: Re: PDF Ausgabe
Beitrag von: markusxy am Oktober 10, 2022, 08:32:12
Zitat von: Paschul am Oktober 09, 2022, 18:54:19Ich gebe pdf Dateien per Veba auf Drucker aus.

Hier müsste vielleicht präzisiert werden.

Werden hier wirklich bereits existierende PDF ausgedruckt, oder erzeugst du die PDF?

VBA hat ja gar keine echte Druckfunktion um Dateien zu drucken.
Man kann also nur auf irgendwelche Workarounds ausweichen - wie ShellExecute usw.
Da ist mir aber nicht bekannt, wie man Drucker-Treiber ansprechen kann.

Du brauchst daher einen Druckertreiber, beim dem Querformat fix hinterlegt ist.
Ansonsten braucht man entsprechende Software.
Titel: Re: PDF Ausgabe
Beitrag von: Paschul am Oktober 10, 2022, 11:10:40
Hallo, ich drucke erzeugte Pdfs aus, diese werden im Laufe des Tages erzeugt und dann nach Anwendungsgebiet abends ausgedruckt. Also mit dieser Routine wird gedruckt: Aktion ist hier print

Private Function DateiOeffnen(Aktion As String, Pfad As String, _
                             Ansicht As Long) As Boolean
Dim hwnd As LongPtr
    Call ShellExecute(hwnd, Aktion, Pfad, "", "", Ansicht)
End Function
Titel: Re: PDF Ausgabe
Beitrag von: markusxy am Oktober 10, 2022, 18:07:51
Du musst nur einen Drucker anlegen, der fix im Querformat druckt,
damit du den Druckauftrag an den speziellen Drucker schicken kannst.

Hier noch der Code zum Drucken:

Sub Datei_Drucken(sDatei As String, sPrinter As String)

Call ShellExecute(0&, "printto", _
                  sDatei, _
                  Chr(34) & sPrinter & Chr(34), _
                  vbNullString, 0&)
End Sub