2012-04-24 36 views
0

当我运行下面的代码时,出现“Object Required”错误。我希望能够点击一个按钮,并将该文件与数字字段一起保存在名为Market_ID的报告中,然后报告名称为市场汇率通知最终报告。该报告确实显示,但我没有保存对话框。另外,如果我从strReportName中删除 Report![Market Rate Notification Final].Market_ID +,我会得到一个保存对话框,其文件的名称为Market Rate Notification Final.pdf。尝试在Access 2010中将其另存为PDF时自定义报告名称

Option Compare Database 

'------------------------------------------------------------ 
' Export_MLR 
' 
'------------------------------------------------------------ 
Function Export_MLR() 
On Error GoTo Export_MLR_Err 
    Dim strReportName As String 

    strReportName = Report![Market Rate Notification Final].Market_ID + "Market Rate Notification Final" 
    DoCmd.OutputTo acOutputReport, strReportName, "PDFFormat(*.pdf)", "", False, "", , acExportQualityScreen 


Export_MLR_Exit: 
    Exit Function 

Export_MLR_Err: 
    MsgBox Error$ 
    Resume Export_MLR_Exit 

End Function 
+0

用“&”替换“+”,然后重试。同时检查“Report![Market Rate Notification Final] .Market_ID'是否给出并输出? – 2012-04-24 15:22:05

回答

1

您不能引用这样一个报表控件的内容:

strReportName = _ 
    Report![Market Rate Notification Final].Market_ID + "Market Rate Notification Final" 

的各种错误的结果是,strReportName为空。首先,它是Reports,而不是Report,接下来,您无法从报表中获取控件的值,您将获得的是报表最后一行的值,并且连接器不是+,除非你正在做一些很花哨的事情。

+0

+ 1报告与报告# – 2012-04-24 15:51:36

+0

Remou,谢谢。我没有意识到“s”,我改变了+然后添加了DoCmd.OpenReport一切都很好!功能Export_MLR() 对错误转到Export_MLR_Err 昏暗strReportName作为字符串 DoCmd.OpenReport“市场利率的通知决赛”,acViewPreview strReportName =报道![市场利率通知最后] .Market_ID与“市场利率的通知最终” DoCmd.OutputTo acOutputReport,strReportName, “PDFFormat(* PDF)”, “” 假 “”,acExportQualityScreen Export_MLR_Exit: 退出功能 Export_MLR_Err: MSGBOX错误$ 恢复Export_MLR_Exit 端功能 – Nick 2012-04-24 19:34:05

相关问题