【问题标题】:How to split a report into multiple PDF files如何将报告拆分为多个 PDF 文件
【发布时间】:2015-11-08 20:29:17
【问题描述】:

假设我在 Access 2010 中有一百页的报告,其中包括按名为 NOM_RITIRO 的变量分组的名称列表(以及一些其他详细信息)。

我想将报告输出到不同的 PDF 文件中,一个用于分组的变量的每个值。

我试图弄清楚如何使这段代码工作:

Sub SplitPdf()

Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim Source As String
Dim SQL As String
Dim MyPath As String
Dim MyFilename As String
MyPath = "D:\Folder\"        

Set db = CurrentDb
SQL = "Select NOM_RITIRO From QueryNominativi Group By NOM_RITIRO"
Set rs = db.OpenRecordset(SQL)    

While Not rs.EOF
    MyFilename = "TK_" & rs!NOM_RITIRO & ".pdf"  
    ' Apply quotes as NOM_RITIRO is a string.
    DoCmd.OpenReport "ElenchiNominativi", acViewPreview, , "NOM_RITIRO = '" & rs!NOM_RITIRO.Value & "'"
    DoCmd.OutputTo acOutputReport, , acFormatPDF, MyPath & MyFilename, False
    DoCmd.Close acReport, "ElenchiNominativi"
    rs.MoveNext
Wend

rs.Close

Set rs = Nothing
Set db = Nothing

End Sub

我在尝试运行 DoCmd.OpenReport 时遇到了问题。 如果记录集没有传递任何数据,我会收到消息框“输入参数值”

知道我做错了什么吗?

【问题讨论】:

  • 假设总是有机会。展示自己为解决问题所做的努力并指出问题所在。
  • 添加解决方案作为对您问题的编辑。
  • @Gustav:抱歉,但这不是处理封闭式问题的方式。它已被提名重新开放;如果有足够多的人同意,您就可以发布您的答案。
  • 好的,但这看起来对提问者来说很简单。只有@Jeeped 留下了一张便条,这是您可以而且应该做的最少的事情,而且没有一个接近投票者拥有 ms-access 的徽章。此外,这个问题非常清楚。此外,投票赞成关闭的标准:可能的答案太多,或此格式的好答案太长都失败,这表明关闭投票者对 Access 中的报告了解甚少.
  • 对不起,这是我的错,问题太模糊了。我会尽量解释我更好地发布代码

标签: ms-access pdf vba ms-access-2010


【解决方案1】:

如果 NOM_RITIRO 不是报告记录源中名为“ElenchiNominativi”的字段(或拼写错误),那么它将提示您输入参数值。

同样,如果您的报表的记录源是一个查询,其中包含未在任何表中引用的字段名,您也会收到此提示。

【讨论】:

    猜你喜欢
    • 2022-12-19
    • 2015-03-06
    • 2010-10-04
    • 2011-04-04
    • 1970-01-01
    • 2021-12-16
    • 2014-12-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多