由于升级到Access 2013 OutputTo命令(到PDF)不起作用

时间:2018-06-21 14:49:06

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

我已经使用Access 2010使用Access(accdb格式)数据库三年了。从那时起,我最近已升级到Access 2013,我得到

的OutputTo代码行(请参阅文章底部)不起作用
  

命令或操作OutputTo现在不可用

。我已经看到许多人都遇到过类似(但不相同)的问题,但没有任何建议对我有用。

但是,如果在按住Shift键的同时启动Access,则Outputs可以正常工作,因此我认为这与VBA代码(请参阅下文)无关,更多是权限问题。

非常感谢您提出解决方案,谢谢

这是我的代码

  DoCmd.OutputTo acOutputReport, "Vehicles Due In", "PDFFormat(*.pdf)", "C:\Users\User\Google Drive\Cars\Vehicles Due In.pdf", False, "", , acExportQualityPrint

更新的编辑:添加了注释中的代码

On Error GoTo Err_cmdReportPreview_Click 
   Dim stDocName As String 
   DoCmd.OutputTo acOutputReport, "Overdue Balances", "PDFFormat(.pdf)", _
     "C:\Users\User\Google Drive\Cars\Overdue Balances.pdf", False, "", , _
     acExportQualityPrint DoCmd.OutputTo acOutputReport, "Vehicles Due In", _
     "PDFFormat(.pdf)", "C:\Users\User\Google Drive\Cars\Vehicles Due In.pdf", _
     False, "", , acExportQualityPrint 
Exit_cmdReportPreview_Click: 
    Exit Sub 
Err_cmdReportPreview_Click: 
    MsgBox Err.Description 
    Resume Exit_cmdReportPreview_Click 
End Sub

1 个答案:

答案 0 :(得分:0)

我会尝试将"PDFFormat(*.pdf)"更改为acFormatPDF常量-因为您好像错过了字符串中的空格,这会让您知道您的版本是否支持此方法。该常数应为"PDFFormat (*.pdf)"

要尝试的第二件事是在Me.SetFocus命令之前使用OutputTo。这就可以解释为什么使用密钥而不是自动化时它可以工作。我不确定单击按钮与在禁用启动的情况下手动运行时,表单中会发生什么动作,但是您可能会强迫它保持焦点。