Sub PDFファイルをセルに出力するサンプル()
Const TEMP_DRIVE As String = "D:\" '※1
Const TEMP_FILE As String = "pdf.txt"
Dim txtPath As String: txtPath = TEMP_DRIVE & TEMP_FILE
Dim pdfPath As String: pdfPath = ThisWorkbook.path & "\"
Dim pdfName As String
Dim i As Long
Do While pdfName <> ""
i = i + 1
Call PDF_TO_TEXT(pdfPath & pdfName, txtPath)
Call TEXT_TO_CELL(txtPath, i)
pdfName = Dir()
Loop
Kill txtPath
End Sub
Private Sub PDF_TO_TEXT(ByVal pdfPath As String, ByVal txtPath As String)
Const SAVE_TYPE As String = "com.adobe.acrobat.accesstext"
Dim app As Object: Set app = CreateObject("AcroExch.APP")
Dim doc As Object: Set doc = CreateObject("AcroExch.AVDoc")
With app
.Show
With doc
Call .Open(pdfPath, "")
.GetPDDoc.GetJSObject.SaveAs txtPath, SAVE_TYPE
Call .Close(1)
End With
Call .Hide
Call .Exit
End With
Set app = Nothing
Set doc = Nothing
End Sub
Private Sub TEXT_TO_CELL(ByVal path As String, ByVal lngOffset As Long)
Dim text As Variant
text = Split(CreateObject("Scripting.FileSystemObject").OpenTextFile(path, 1).ReadAll, vbCrLf)
Range(Cells(1, lngOffset), Cells(UBound(text) + 1, lngOffset)) = WorksheetFunction.Transpose(text)
End Sub