Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Einzelnen Datensatz im Bericht per eMail als PDF versenden

Begonnen von Nigel983, März 06, 2016, 14:30:24

⏪ vorheriges - nächstes ⏩

Nigel983

Hallo!

Ich habe ein Formular, in welchem ich Button eingebaut habe. Die Button öffnen einen Bericht in einem vorher ausgewähltn Datensatz und zeigen die Seitenansicht an bzw. drucken den Bericht direkt aus.

Private Sub Befehl40_Click()
On Error Resume Next
'Ausdruck
DoCmd.OpenReport "rptHabeuebersicht", acViewPreview, , "ID = " & Me.ID
End Sub


Wenn ich den Assistenten für Schaltflächen benutze, habe ich die Möglichkeit, den Bericht per eMail zu verschicken. Der Assistent schreibt aber ein Makro und kein VBA. Im Prinzip nicht schlimm, aber er versendet den Bericht für alle Datensätze und nicht nur für den vorher ausgewählten.

Nun habe ich google bemüht und bin auf DoCmd.SendObject gestoßen. Aber meine mühsam in Foren erworbenen Kenntnisse reichen nicht aus, um den Befehl zu programmieren.

Noch mal das gewünschte Endprodukt:
Beim klick auf den Button soll der Bericht, der mit dem oben stehenden Befehl als Seitenansicht angezeigt wird, als eMail Anhang im PDF Format generiert und in ein Outlook Fenster übergeben werden. Da möchte ich dann den Betreff vorbelegen und den Rest selber eingeben.

Zurzeit arbeite ich mit Access 2010.

LG
Christian

DF6GL

Hallo,

was ist an Sendobject  unklar ?   Hast Du die VBA-Hilfe bemüht?

DoCmd.SendObject acSendReport, "rptHabeuebersicht", acFormatPDF, , , , , , True



Wenn der Bericht einen bestimmten DS "drucken" soll, dann muss entweder vorher die dem Bericht zugrunde liegende Abfrage mit den entspr. Kriterien versorgt werden oder der Bericht mittels Docmd.Openreport und dem acHidden-Parameter und der Where-Condition geöffnet werden. 



DoCmd.OpenReport "rptHabeuebersicht", acPreview, , "ID=" & M!ID, acHidden
DoCmd.SendObject acSendReport, "rptHabeuebersicht", acFormatPDF, , , , , , True
DoCmd.Close acReport, "rptHabeuebersicht"


MaggieMay

Hallo,

bei der OutputTo-Methode funktioniert es, wenn der Bericht zuvor in der Seitenansicht und gefiltert geöffnet wurde, dass genau diese Auswahl auch gedruckt wird. Anschließend ist der in der Vorschau geöffnete Bericht wieder zu schließen.

Es wäre doch einen Versuch wert, ob dies in Verbindung mit SendObject ebenfalls funktioniert.
Andernfalls müsste halt der Bericht an eine gefilterte Abfrage gebunden werden.
Freundliche Grüße
MaggieMay