在 Access 中向每个用户发送他们自己的个人电子邮件 PDF 报告

send each user their own individual emailed PDF report in Access

我从本网站的另一个问题中查找了以下代码,并尝试将其应用于我自己的代码,但无济于事 - 我正在尝试通过电子邮件将我的报告的 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”:

Syntax error (missing operator) in query expression 'AccountNumber = 1RV80014'

帐户 # 有效,但不确定为什么我会卡在这里或如何修复它 - 超级新手。

您的帐号是一个字符串 1RV80014 而您的 Where condition:="AccountNumber = " & !AccountNumber 是一个整数。所以将其更改为字符串 Where condition:= "AccountNumber = '" & !AccountNumber & "'"