简体   繁体   中英

VBA: Acrobat Run time error 429; ActiveX component can't create object

I have the following codes to read in contents from a PDF file in Excel VBA:

'Note: A Reference to the Adobe Library must be set in Tools|References!
Dim AcroApp As CAcroApp, AcroAVDoc As CAcroAVDoc, AcroPDDoc As CAcroPDDoc
Dim AcroHiliteList As CAcroHiliteList, AcroTextSelect As CAcroPDTextSelect
Dim PageNumber, PageContent, Content, i, j
Set AcroApp = CreateObject("AcroExch.App")
Set AcroAVDoc = CreateObject("AcroExch.AVDoc")
If AcroAVDoc.Open(strFileName, vbNull) <> True Then Exit Function
' The following While-Wend loop shouldn't be necessary but timing issues may occur.
While AcroAVDoc Is Nothing
  Set AcroAVDoc = AcroApp.GetActiveDoc
Wend
Set AcroPDDoc = AcroAVDoc.GetPDDoc
For i = 0 To AcroPDDoc.GetNumPages - 1
  Set PageNumber = AcroPDDoc.AcquirePage(i)
  Set PageContent = CreateObject("AcroExch.HiliteList")
  If PageContent.Add(0, 9000) <> True Then Exit Function
  Set AcroTextSelect = PageNumber.CreatePageHilite(PageContent)
  ' The next line is needed to avoid errors with protected PDFs that can't be read
  On Error Resume Next
  For j = 0 To AcroTextSelect.GetNumText - 1
    Content = Content & AcroTextSelect.GetText(j)
  Next j
Next i
ReadAcrobatDocument = Content
AcroAVDoc.Close True
AcroApp.Exit
Set AcroAVDoc = Nothing: Set AcroApp = Nothing

End Function

Sub demo()

    Dim str As String
    str = ReadAcrobatDocument("C:\Desktop\asdf.pdf")

End Sub

However, I am getting the runtime 429 error at

Set AcroApp = CreateObject("AcroExch.App")

What is wrong? I have Adobe Reader X and the references I've checked are:

Acrobat Access 3.0 Type Library AcroBrokerLib AcroIEHelper 1.0 Type Library AcroIEHelperShim 1.0 Type Library Adobe Acrobat Browser Control Type Library 1.0 Adobe Acrobat 10.0 Type Library Adobe Reader File Preview Type Library

From the very first result in Google for the search query:

createobject acroexch.app error 429

You cannot do this with Adobe Reader, you need Adobe Acrobat:

This OLE interface is available with Adobe Acrobat, not Adobe Reader.

https://forums.adobe.com/thread/657262

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM