【发布时间】:2018-09-15 14:19:38
【问题描述】:
我有以下代码来填充 PDF 文档中的组合框。据我所知,代码是正确的,根据Acrobat Forms API Reference
但是代码在 PopulateListOrComboBox 调用中失败并出现此错误:
对象“IField”的方法“PopulateListOrComboBox”失败
Dim acroApp As Acrobat.acroApp
Set acroApp = New Acrobat.acroApp
Dim myForm As Acrobat.AcroAVDoc
Set myForm = New Acrobat.AcroAVDoc
Dim bOK As Boolean
bOK = myForm.Open("C:\Users\sholtzman\downloads\wordFormTest.pdf", "temp")
Dim theRealForm As AFORMAUTLib.AFormApp
Set theRealForm = New AFORMAUTLib.AFormApp
Dim pdField As AFORMAUTLib.Field
Set pdField = theRealForm.Fields.Add("triaCoverage", "combobox", 0, 10, 20, 100, 200)
Dim items(2) As String
items(0) = " "
items(1) = "Accept"
items(2) = "Reject"
pdField.PopulateListOrComboBox items
此外,我也测试了这段代码以尝试填充它,但它也失败并出现错误:
自动化错误未指定错误
Dim myPDForm As Acrobat.AcroPDDoc
Set myPDForm = myForm.GetPDDoc
Dim jso As Object
Set jso = myPDForm.GetJSObject
jso.getField("triaCoverage").setItems(1) = " "
最后,当我添加组合框后保存并关闭文档时,我可以进入 并手动设置列表值。有什么想法可以通过代码实现吗?
【问题讨论】:
-
我是第一次阅读有关 PDF COM 的内容,所以只是猜测。我看到
arrItems与 Variant& 类型有些关联:可能你必须声明Dim items As Variant并填充items = Array(" ", "Accept", "Reject")? -
@DisplayName - 谢谢。我仔细检查了你的建议,我收到了一个
Invalid Procedure Call or ArgumentVariant 类型的错误。 -
抱歉,实在是帮不上忙了
-
可能是THIS可以帮助你
-
@DisplayName - 有趣的发现。谢谢你。我可以试试看。
标签: vba excel pdf combobox acrobat