使用Access和VBA的PDF对象名的合并域

时间:2019-06-02 23:55:03

标签: vba ms-access

我正在尝试使PDF的名称成为报告本身中的文本。

例如:

生成的PDF报告中包含“项目:Project X,日期:2019年6月”文本。我希望将PDF保存为``Project X June 2019''。我不想右键单击“另存为”,然后键入它,因为这容易导致用户错误。

我在下面附加了一些代码-当前,它将所有PDF保存为“ Report.PDF”。我不太确定该怎么做。任何帮助将不胜感激。

DoCmd.OpenReport "qryRptInvoice", acViewPreview, , "[InvoiceID] = " & Me.InvoiceID

DoCmd.OutputTo acOutputReport, "qryRptInvoice", acFormatPDF, "Report.PDF", True

1 个答案:

答案 0 :(得分:2)

通过将静态文本与变量输入连接来完成此操作。

可以引用表单上具有用户输入/选择的值的控件。如果您想要项目名称以及月份/年份:

DoCmd.OutputTo acOutputReport, "qryRptInvoice", acFormatPDF, Me.tbxProject & Format(Me.tbxDate, " MMMM YYYY") & ".PDF", True

如果您想要3个字母的月份名称,请使用" MMM YYYY"

可以使用当前日期作为输入,但是如果6月报告在7月1日运行,则文件名将错误。