Bericht per PDF und Mail verschicken

Lies diesen Artikel und viele weitere mit einem kostenlosen, einwöchigen Testzugang.

Es fragen immer wieder Leser an, ob wir nicht einmal beschreiben können, wie man einen Bericht als PDF-Dokument speichert und diesen dann per E-Mail verschickt. Kein Problem: Wir schauen uns erst die einzelnen Grundtechniken an und gehen dann dazu über, Lösungen für Spezialfälle zu entwickeln.

Bericht als PDF speichern

Während wir in früheren Access-Versionen noch eine externe Software benötigten, um PDF-Dokumente auf Basis von Access-Berichten zu erstellen, liefert Access nun zum Glück ein Export-Format für diese Anforderung mit. Also ist ja alles in Butter – wir müssen nur noch herausfinden, wie wir den Bericht per Knopfdruck im PDF-Format speichern.

Beispielbericht

Dazu benötigen wir erstmal einen passenden Bericht. Wir wollen allerdings nicht mit einem einfachen Bericht beginnen, der einfach per Doppelklick auf den Berichtsnamen im Navigationsbereich aufgerufen werden kann, sondern mit etwas Anspruchsvollerem. Was könnte das sein Natürlich ein Bericht, dem wir beim öffnen per WhereCondition ein Kriterium übergeben, nach dem die anzuzeigenden Daten ausgegeben werden. Dies ist nämlich üblicherweise der Fall – es gibt wohl nur selten Berichte, die alle Datensätze der zugeordneten Datenherkunft ausgeben. Die meisten Berichte liefern gefilterte Daten, beispielsweise in einer Rechnung, die nur die Daten zu einer bestimmten Bestellung enthalten soll.

Unser Beispielbericht ist so aufgebaut, dass Sie mit ihm alle Datensätze der Tabelle tblBestellungen ausgeben können oder auch nur eine einzige Rechnung. Er ist wie in Bild 1 aufgebaut und enthält beispielsweise einen Seitenkopf, der nur für die Folgeseiten der ersten Seite der jeweiligen Rechnung ausgegeben werden soll. Dazu enthält der Bericht ein paar Ereignisprozeduren, auf deren Bedeutung wir weiter unten zu sprechen kommen (den vollständigen Bericht stellen wir im Beitrag Rechnungsbericht vor – siehe www.access-im-unternehmen.de/1044).

Dialog zum Festlegen von Sortierungen und Gruppierungen

Bild 1: Dialog zum Festlegen von Sortierungen und Gruppierungen

Bericht öffnen

Wenn Sie diesen Bericht einfach über den Navigationsbereich öffnen, zeigt er alle Rechnungen zu den Datensätzen der Tabelle tblBestellungen an (immerhin einige hundert). Das ist natürlich nicht das Ziel – wir wollen am Ende genau einen Bericht öffnen, in ein PDF-Dokument speichern und dann per E-Mail verschicken.

Dazu bauen wir ein kleines Formular auf, das in der Entwurfsansicht wie in Bild 2 aussieht. Wenn wir nun auf eine der Schaltflächen klicken, soll immer genau die Rechnung für die aktuell angezeigte Bestellung ausgegeben werden.

Formular zum Anzeigen einer Bestellung und zum Ausgeben von Rechnungen

Bild 2: Formular zum Anzeigen einer Bestellung und zum Ausgeben von Rechnungen

Wenn wir die Schaltfläche cmdBerichtAnzeigen anklicken, soll der Bericht einfach nur in der Seitenansicht geöffnet werden. Dazu verwenden wir eine Ereignisprozedur, die den Bericht mit der Methode DoCmd.OpenReport öffnet und dabei mit dem Parameter WhereCondition den Ausdruck “BestellungID = ” & Me!BestellungID übergibt. Dies gelingt auch, wie Bild 3 zeigt: Der Bericht enthält lediglich eine Seite mit den im Formular zu dieser Bestellung angezeigten Rechnungspositionen. Die Ereignisprozedur sieht wie folgt aus:

Formularansicht zum Anzeigen einer Bestellung und zum Ausgeben von Rechnungen

Bild 3: Formularansicht zum Anzeigen einer Bestellung und zum Ausgeben von Rechnungen

Private Sub cmdBerichtAnzeigen_Click()
     DoCmd.OpenReport "rptRechnungen", View:=acViewPreview, _
        WhereCondition:="BestellungID = " & Me!BestellungID
End Sub

Soweit, so gut: Aber wir wollen ja nicht die Berichtsvorschau, sondern ein PDF-Dokument mit dem gleichen Inhalt. Bei geöffnetem Bericht kommen wir relativ einfach dorthin: Wir müssen nur die Drucken-Schaltfläche des Ribbons betätigen und im nun erscheinenden Drucken-Dialog den Eintrag Microsoft Print To PDF auswählen (s. Bild 4). Nach einem Klick auf OK erscheint ein Dateiauswahl-Dialog, mit dem Sie festlegen, unter welchem Dateinamen die PDF-Datei gespeichert werden soll. Danach können Sie die PDF-Datei öffnen, die wie in Bild 5 aussieht.

Drucken-Dialog mit dem Microsoft-eigenen PDF-Treiber

Bild 4: Drucken-Dialog mit dem Microsoft-eigenen PDF-Treiber

Ein Bericht im PDF-Format

Bild 5: Ein Bericht im PDF-Format

PDF per VBA erstellen

Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...

Testzugang

eine Woche kostenlosen Zugriff auf diesen und mehr als 1.000 weitere Artikel

diesen und alle anderen Artikel mit dem Jahresabo

Schreibe einen Kommentar