
08-12-20, 14:41
|
| Όνομα: Γιάννης Έκδοση λογισμικού Office: Ms-Office 2016 Γλώσσα λογισμικού Office: Αγγλική | | Εγγραφή: 08-12-2020
Μηνύματα: 153
| |
Η Λύση απο τον Philipp Stiefel Κώδικας: Public Sub ExportFilteredReportToPDF()
Dim reportName As String
Dim fileName As String
Dim criteria As String
reportName = "rptYourReportName"
fileName = "C:\tmp\report_export_file.pdf"
criteria = "SomeTextField = 'ABC' AND SomeNumberField = 123"
DoCmd.OpenReport reportName, acViewPreview, , criteria, acHidden
DoCmd.OutputTo acOutputReport, reportName, acFormatPDF, fileName
DoCmd.Close acReport, reportName, acSaveNo
End Sub
Θα μπορούσες και να κάνεις αυτόματα και την αποστολή είτε μέσω Outlook είτε μέσω κάποιας άλλης μεθόδου (π.χ CDO, vbSend)
Παράδειγμα με Outlook Κώδικας: Private Sub EmailReport_Click()
Dim oApp As New Outlook.Application
Dim oEmail As Outlook.MailItem
Dim fileName As string, todayDate As String
'Export report in same folder as db with date stamp
todayDate = Format(Date, "MMDDYYYY")
fileName = Application.CurrentProject.Path & "\ReportName_" & todayDate & ".pdf"
DoCmd.OutputTo acReport, "ReportName", acFormatPDF, fileName, False
'Email the results of the report generated
Set oEmail = oApp.CreateItem(olMailItem)
With oEmail
.Recipients.Add "myemailaddress@email.com"
.Subject = "Training Roster"
.Body = "Roster Information"
.Attachments.Add fileName
.Send
End With
MsgBox "Email successfully sent!", vbInformation, "EMAIL STATUS"
Οπότε εαν ενώσεις τις 2 μεθόδους με 1 κλικ...
|