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