通过Excel VBA引用Acrobat Javascript全局variables所需的语法是什么?
我有一个Acrobat .pdf文件,其中包含一个Javascript全局variables。 我正在试图从VBA中获取代码,它将从Acrobat中引用这个全局的值,但是我不能完全弄清楚这样做的必要语法。 我认为这是一个微不足道的简单问题,但它却让我难住了。
基本上,在我的Acrobat / .pdf文件中,我有一些非常简单的Javascript定义:
global.ReturnString = "Arbitrary String";
然后我有另一个非常简单的button,显示返回string作为应用程序警报:
app.alert(global.ReturnString);
我想要做的就是能够通过Excel消息框重现这个非常简单的function。 换句话说,我只想编写一些可以在Excel中成功执行的工作VBA代码:
MsgBox (SomeSortOfPointerToAcrobat.Global.ReturnString)
到目前为止,我还没有能够得到这个工作。 我试过使用GetJSObject作为构造在Acrobat和Excel之间传递信息(下面的VBA代码)。 我正在打开Excel用户窗体中的.pdf文件,当时我试图在Excel VBA中引用JavaScript全局variables:
Dim gAPP As Acrobat.CAcroApp Dim gPDDOC As Acrobat.CAcroPDDoc Dim jso As Object Set gAPP = CreateObject("AcroExch.App") Set gPDDOC = CreateObject("AcroExch.PDDoc") If gPDDOC.Open("C:\path\testdoc.pdf") Then Set jso= gPDDOC.GetJSObject MsgBox (jso.Global.ReturnString) End If
但是这总是会导致运行时错误'438':对象不支持这个属性或方法。
我有添加到我的VBA项目的Adobe Acrobat 10.0types库。
有什么build议么?
再次,我为我所认为的一个非常微不足道的问题表示歉意。 我很高兴根据需要澄清我从这个问题的描述中所遗漏的任何需要的细节。
(标记为已回答,以便这不再显示为未解决的问题)
回答:实际上,原始问题中的代码是正确的。