Automati c электронных писем с отчетом в виде вложения в Access 2016 - PullRequest
0 голосов
/ 28 февраля 2020

Я хочу автоматически отправлять c электронных писем лицам, чей emailID будет сохранен в полях запроса, с моим отчетом (одинаковым для всех) в качестве вложения.

  1. У меня есть запрос , во время компиляции он показывает сообщение об ошибке "в выражении запроса.

    Ошибка 3075

  2. Мне нужно приложить свой отчет к каждому письму, но я не могу найти способ удалять каждый раз после отправки из моего локального файла ( Я удалил код, связанный с этим, поэтому вы можете добавить новый )
Option Compare Database
Option Explicit

Public Sub sendserialemail()

Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim emailto As String
Dim emailcc As String
Dim emailsubject As String
Dim emailtext As String
Dim outapp As Outlook.Application
Dim outmail As Outlook.MailItem
Dim outstarted As Boolean
Dim rpt As Report
Dim pdfmail As String

On Error Resume Next
Set outapp = GetObject(, "outlook.application")
On Error GoTo 0
If outapp Is Nothing Then
    Set outapp = CreateObject("outlook.application")
    outstarted = True
End If

Set db = CurrentDb
Set rs = db.OpenRecordset("qryeMailOverdueTasks")
DoCmd.OutputTo acOutputReport, "tasks", acFormatPDF, "desktop"
Do Until rs.EOF
    emailto = rs.Fields("responsible person").Value

    emailcc = "ravikumar.ramadas@plansee.com"

    emailsubject = "Pending tasks to complete the issue regarding" & " " & rs.Fields("issue").Value

    emailtext = "Hello" & vbCrLf & "Kindly complete the task which is in the attached file to complete the cutomer isue regarding" & " " & rs.Fields("issue").Value
pdfmail = "tasks.pdf"

    Set outmail = outapp.CreateItem(olMailItem)

    outmail.To = emailto
    outmail.CC = emailcc
    outmail.Subject = emailsubject
    outmail.Body = emailtext
    outmail.Attachments = pdfmail
    outmail.Send

    rs.MoveNext
Loop

rs.Close
Set rs = Nothing
Set db = Nothing

If outstarted Then
    outapp.Quit
End If

Set outmail = Nothing
Set outapp = Nothing

End Sub

1 Ответ

0 голосов
/ 28 февраля 2020

Код пытается сохранить pdf с именем «desktop» в папке, в которой находится db. Затем код пытается вложить файл с именем «tasks.pdf», но этот файл не существует, и при этом не указывается путь к файлу, где находится pdf.

Исправьте код, чтобы указать путь к файлу и имя для сохранения и получения.

...