Как экспортировать данные в формате PDF в формате Excel без изображений? - PullRequest
0 голосов
/ 31 мая 2019

У меня очень большое количество форм PDF (с тем же форматом), которые я хочу экспортировать в фильтруемый файл Excel. Эти формы содержат изображения, встроенные повсюду. При экспорте в стандарт Adobe, полученный файл .csv содержит огромное количество случайных символов в качестве «данных изображения». Поскольку у меня так много форм PDF, я, очевидно, не хочу включать это. При импорте файлов в Excel он генерирует массивные столбцы и строки случайных символов из-за данных изображения

Я немного писал в VBA, чтобы попытаться исключить несуразные столбцы, но мой код слишком специфический и слишком медленный. Я хочу более эффективный способ сделать это.

Sub OpenCSV()

Application.ScreenUpdating = False

Dim FilePath As String, rownumber As Integer, j As Integer

'Select The File

FilePath = Application.GetOpenFilename("Text Files (*.csv),*.csv", , "Select CSV file")

Open FilePath For Input As #1

rownumber = 0

' Loop continues until End Of File

Do Until EOF(1)

Line Input #1, LineFromFile

'Make an array from the file

LineItems = Split(LineFromFile, ",")

j = 0
    For i = 0 To 314

' This If statement removes the images (only works if report is in exact same format)

If i <> 86 And i <> 87 And i <> 88 And i <> 89 Then

Cells(1, 1).Offset(rownumber, j).Value = LineItems(i)

j = j + 1

End If

Next i

rownumber = rownumber + 1
Loop

Close #1

End Sub

Это выполняется медленно и, как правило, приводит к ошибке, если отсутствует запись в форме и т. Д. Я открыт для улучшения этого кода или отказа от него, если существует какое-либо программное решение.

1 Ответ

0 голосов
/ 31 мая 2019

Используя VBA, вы можете извлечь только информацию формы, а не изображения. Смотрите пример здесь: https://github.com/pdftables/vba-pdftables-api/blob/master/pdftables.vba

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...