Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Bericht direkt als .pdf speichern?

Begonnen von dobby110, August 05, 2020, 16:26:26

⏪ vorheriges - nächstes ⏩

dobby110

Hallo zusammen,

ich habe soeben über die Makro-Funktionen in Access ein "Makro" nach VBA konvertiert.
Und zwar würde ich gerne den Bericht direkt als .pdf-Datei unter einem bestimmten Namen speichern.
Kann mir dabei jemand helfen? Wie muss ich den Code im VBA modifizieren, damit der Bericht in der Seitenansicht direkt als .pdf gespeichert wird?


Option Compare Database

'------------------------------------------------------------
' Proc_TEST_Druck_WV
'
'------------------------------------------------------------
Function Proc_TEST_Druck_WV()
On Error GoTo Proc_TEST_Druck_WV_Err

    DoCmd.OpenReport "ber_Massnahmen_mit_WVL", acViewPreview, "", "", acNormal
    DoCmd.RunCommand acCmdPrint


Proc_TEST_Druck_WV_Exit:
    Exit Function

Proc_TEST_Druck_WV_Err:
    MsgBox Error$
    Resume Proc_TEST_Druck_WV_Exit

End Function


Vorab vielen Dank für die Unterstützung!

DF6GL

Hallo,

--Öffne den Bericht als "versteckt"  (acHidden)

--Konvertiere und speichere mit Docmd.OutputTo  den Bericht als PDF-Datei mit dem gewünschten Namen (siehe VBA-Hilfe für die Parameter).


--Schließe den versteckt geöffneten Bericht wieder.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

MzKlMu

Hallo,
einfach so:
DoCmd.OutputTo acOutputReport, "ber_Massnahmen_mit_WVL", "PDF", "Pfad & ber_Massnahmen_mit_WVL.pdf"
Eine Funktion zum Drucken halte ich hier für überflüssig.
Den Code kannst Du einfach in das Ereignis "Beim Klicken" eines Befehlsbuttons legen.
Gruß Klaus

DF6GL

Hallo,

Openreport ist nur dann überflüssig, wenn nie  eine Where-Condition vorgesehen ist.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

PhilS

Zitat von: dobby110 am August 05, 2020, 16:26:26Und zwar würde ich gerne den Bericht direkt als .pdf-Datei unter einem bestimmten Namen speichern.
Hier ist eine Anleitung: Gefilterten Access Bericht als PDF exportieren
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

DF6GL

#5
Hallo,

man könnte das Openreport-Getöse auch dadurch umgehen, indem die Berichtsabfrage in der Parameter-Sektion entsprechend versorgt oder ein SQL-String mit einer Where-Condition  dynamisch zusammengesetzt und der SQL-Eigenschaft der Berichtabfrage zugewiesen wird.


PS:  fällt mir noch ein:

Eine Public-Function generieren, die in der Berichtsabfrage aufgerufen wird (im Kriterienfeld,  bzw.Where-Condition -Klausel). Diese Funktion übergibt eine vorher gesetzte Public-Variable als Kriteriumswert an die Abfrage, sobald diese durch das Öffnen des Berichtes ausgeführt wird.

Alles benötigt ein bisschen Aufwand, um den man mit keiner  (zumindest mir bekannten) Methode herumkommt.




Nun eine Frage von mir, etwas, aber nicht ganz off topic:

Sobald der Bericht direkt oder per Outputto ausgegeben wird, poppt das Drucken-Info-Fenster (des Spoolers oder der Druckertreibers) auf und schließt gleich wieder.

Hat jemand eine Lösung parat, wie diese MsgBox gänzlich unterdrückt werden kann? (Vermutlich hab ich es vergessen...    :o )

Vorstellung: API oder WMI oder Registry
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access