отправить каждому пользователю свой индивидуальный отчет в формате PDF по электронной почте в Access - PullRequest
0 голосов
/ 28 августа 2018

Я посмотрел следующий код из другого вопроса на этом сайте и попытался применить его к своему собственному, но безрезультатно - я пытаюсь разослать по электронной почте pdf своего отчета каждому пользователю только с конкретной информацией содержится в нем. Если будет 15 пользователей, будет отправлено 15 различных электронных писем, содержащих только их информацию. любая помощь очень ценится.

Option Compare Database


Sub Mac1()
Dim rsAccountNumber As DAO.Recordset

Set rsAccountNumber = CurrentDb.OpenRecordset( _
    "SELECT DISTINCT AccountNumber FROM UnAffirmed_Report_for_En Query")

With rsAccountNumber

    Do Until .EOF

        DoCmd.OpenReport "Unaffirmed Report", _
            acViewPreview, _
            WhereCondition:="AccountNumber = " & !AccountNumber, _
            WindowMode:=acHidden

        DoCmd.OutputTo acOutputReport, _
            "Unaffirmed Report", _
            acFormatPDF, _
            "C:\users\rv\folder_name" & !AccountNumber & ".pdf"

        DoCmd.Close acReport, "Unaffirmed Report", acSaveNo

        .MoveNext

    Loop

    .Close

End With
End Sub

когда я все же получаю, я получаю ошибку времени выполнения '3075':

Синтаксическая ошибка (отсутствует оператор) в выражении запроса 'AccountNumber = 1RV80014'

учетная запись # действительна, но не уверен, почему я застреваю здесь или как это исправить - супер новичок в этом.

1 Ответ

0 голосов
/ 29 августа 2018

Ваш номер счета является строкой 1RV80014 , а ваш Where condition:="AccountNumber = " & !AccountNumber указывает целое число. Так что поменяйте его на String Where condition:= "AccountNumber = '" & !AccountNumber & "'"

...