【问题标题】:VBA + Adobe Acrobat SDK - Unable to save an empty page?VBA + Adob​​e Acrobat SDK - 无法保存空白页面?
【发布时间】:2017-12-26 20:21:10
【问题描述】:

我使用 VBA 作为平台来进行一些 PDF 操作。我遇到的问题是,如果 PDF 对象尚未打开,我似乎无法保存 PDF 对象。下面是向 PDF 对象插入页面,然后保存 pdf 对象的代码的 sn-p。就代码而言,我已经确定它可以工作,因为我已经用另一个 pdf 对象使用相同的输入测试了 save 方法,它工作得很好。有人可以帮助解释为什么它不允许我保存对象吗?

谢谢!

Dim NewPDF As New Acrobat.AcroPDDoc
Set NewPDF = CreateObject("AcroExch.PDDoc")
If NewPDF.InsertPages(j, OriPDF, j, 1, 0) Then MsgBox "Success"
If NewPDF.Save(PDSaveLinearized, WritePath & "\" & sh.Cells(StartRow + j - 1, i).Value & ".pdf") Then MsgBox "Success"
NewPDF.Close
Set NewPDF = Nothing

运行上述代码时,两条成功线均未按预期工作。

【问题讨论】:

    标签: vba pdf acrobat-sdk


    【解决方案1】:

    将第 3 行更改为此...

    If NewPDF.InsertPages(-1, OriPDF, j, 1, 0) Then MsgBox "Success" 
    

    第一个参数是插入新页面的位置,但您没有页面,因为文档是空的,因此没有页面零。

    【讨论】:

    • 我正在寻找一种向您发送消息的方法,但我似乎无法在任何地方找到它。有什么好的方法可以发给你吗?我目前使用了一种解决方法,方法是在其他地方创建一个空白的 pdf 文件并将其用作模板文件。但最好了解它为什么不能正常工作。谢谢!
    • 您可以通过 joel@practicalpdf.com 与我联系
    • 我从另一个论坛得到了答案。显然,我需要一行来创建实际的 PDF 对象,因为 createobject() 只创建 PDDoc 对象,它是一个指针。我想我现在明白了!感谢您的帮助!
    • 糟糕,我收回了。真的真的很奇怪的事情正在发生。让我给你发一封电子邮件。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-29
    • 2018-12-06
    • 1970-01-01
    • 2022-12-29
    • 1970-01-01
    • 2021-07-21
    • 2019-02-16
    相关资源
    最近更新 更多