首页 > 解决方案 > 将我的 MS Access 报告数据导出到 Adob​​e Acrobat DC pdf 时出现问题

问题描述

有人可以帮我编写代码吗?我的 jso.getfield 行出现错误“需要对象”。我已经尝试研究这个问题,但没有运气,我希望有人可以帮助我解决这个问题。我还有其他几个要导出为 PDF 的字段。这只是我的 Access DB 中的一个字段,我想将值放入 pdf 字段这是我正在使用的。

Private Sub cmd_PrinttoPDF_Click()
Dim RDate, TmpFileNm, FilePth, stDocName, NewFileNm, NewFilePth, NewFilPthNm As String
Dim Left_VOUCHER
Dim FileNm
Dim gApp As Acrobat.AcroApp
Dim avDoc
Dim pdDoc
Dim jso

DoCmd.Hourglass True
DoCmd.SetWarnings False
Left_VOUCHER = Left(Me![VOUCHER], 2)
Select Case Left_VOUCHER
Case "C0"
     stDocName = "1131"
Case "CC"
     stDocName = "1131"
Case "JD"
     stDocName = "1131"
Case "J0"
     stDocName = "1131"
Case "MP"
     stDocName = "1131"
'Case Else
     'stDocName = "SF1098"
End Select

TmpFileNm = "TEMPLET_DD1131.pdf"
RDate = (Format(Date, "yyyy_mm_dd"))
FilePth = "X:\Access_DataBases\Exported_Reports\Checks\"
FileNm = FilePth & TmpFileNm

NewFileNm = stDocName & "_" & Me![VOUCHER] & "_" & RDate & ".pdf"
NewFilePth = "X:\Financial_Services\Checks\Vouchers\"
NewFilPthNm = NewFilePth & NewFileNm

Set gApp = CreateObject("AcroExch.app")

Set avDoc = CreateObject("AcroExch.AVDoc")
If avDoc.Open(FileNm, "") Then
    Set pdDoc = avDoc.GetPDDoc()
    Set jso = pdDoc.GetJSObject
    jso.getField("TEMPLET_DD1131[0].Page1[0].DISBURSING_OFFICE_COLLECT[0]").Value = "VOUCHER"

    pdDoc.Save PDSaveIncremental, NewFilPthNm
    pdDoc.Close
    End If
avDoc.Close (True)
Set gApp = Nothing
Set avDoc = Nothing
Set pdDoc = Nothing
Set jso = Nothing
DoCmd.Hourglass False
DoCmd.SetWarnings True

End Sub

对此的任何帮助将不胜感激。我对 vba 仍然很陌生,并且对尝试将数据导出为 pdf 确实很陌生。错误是运行时错误“424”:需要对象。当我调试它时..它突出显示该行 jso.getField("TEMPLET_DD1131[0].Page1[0].DISBURSING_OFFICE_COLLECT[0]").Value = "VOUCHER"

更新:我打开了监视窗口,这就是结果显示的内容 Watch : : jso.getField("TEMPLET_DD1131[0].Page1[0].DISBURSING_OFFICE_COLLECT[0]").Value = "VOUCHER" : <Object required> : Variant/Empty : Form_VOUCHER.cmd_PrinttoPDF_Click

标签: vbams-access

解决方案


推荐阅读