2017-04-20 5 views
0

VBA (MS Office 2010)에서 일하고 있으며 Outlook에서 정기적으로받는 PDF 첨부 파일에서 핵심 단어를 추출하려고합니다.PDF에서 Windows 클립 보드로 모든 텍스트 복사

PDF를 Word 문서로 저장하고이 문서에서 텍스트를 추출하려고했지만 Acrobat X 표준을 사용하고 있기 때문에 프로그래밍 방식으로이 작업을 수행 할 수 없습니다.

이제 Acrobat 라이브러리 방법을 사용하여 PDF 문서의 모든 텍스트를 Windows 클립 보드로 복사하는 방법을 찾고 있습니다. 그런 다음 Word에 붙여 넣습니다 (이 복사/붙여 넣기는 수동으로 수행 할 때 잘 작동합니다 - 텍스트 손상 없음).

필자는 Acrobat 사용 경험이 매우 부족하고 Acrobat SDK 리소스 등을 검토하고 있지만 까다로운 것으로 나타났습니다.

PDF 문서의 모든 텍스트를 선택하고 VBA의 Acrobat 라이브러리 메소드를 사용하여 Windows 클립 보드로 복사하려면 어떻게해야합니까?

+0

에서입니다 ... 아니면 그냥 업그레이드 할 수 있습니다. Acrobat XI Standard 및 DC Standard 모두 VBA를 통해 Office 형식으로 내보낼 수 있습니다. – joelgeraci

+0

알아두면 좋지만 가능한 경우 확인합니다. –

답변

0

참조를 위해 아래 코드를 사용하여 해결했습니다.

이 신속하게 텍스트 파일로 PDF 파일을 변환한다 거기 핵심 단어에서이 어도비 X 표준과 협력 등을 클립 보드

에 넣고, 문자열로 선택하여 읽을 수 있습니다.

코드 http://forum.chandoo.org/threads/vba-to-convert-pdf-to-txt.14245/

Dim AcroXApp As Acrobat.AcroApp 
Dim AcroXAVDoc As Acrobat.AcroAVDoc 
Dim AcroXPDDoc As Acrobat.AcroPDDoc 
Dim Filename As String 
Dim jsObj As Object 
Dim NewFileName As String 

Filename = "C:\Documents and Settings\xxx\Desktop\file01.pdf" 
NewFileName = "U:\file.txt" 

Set AcroXApp = CreateObject("AcroExch.App") 
'AcroXApp.Show 

Set AcroXAVDoc = CreateObject("AcroExch.AVDoc") 
AcroXAVDoc.Open Filename, "Acrobat" 
AcroXApp.Hide 'my additon - needed? 

Set AcroXPDDoc = AcroXAVDoc.GetPDDoc 

Set jsObj = AcroXPDDoc.GetJSObject 

jsObj.SaveAs NewFileName, "com.adobe.acrobat.plain-text" 

AcroXAVDoc.Close False 
AcroXApp.Hide 
AcroXApp.Exit 

End Sub