PDF-Formulare in Excel-Tabelle extrahieren
08.12.2023 14:40:28
Taner
habe einen Code in VBA geschrieben um PDF-Inhalte automatisch nach Excel zu importieren, aber habe ein Problem damit. Der Code funktioniert auch gewissermaßen, aber ich kriege die Inhalte von dem PDF-Dokument nicht zu 100%.
In dem PDF-Formular sind Bereiche, die ausgefüllt werden können. Mein Code übernimmt zwar alles, aber genau die Stellen, wo der Name, Nachname u. Anschrift etc. werden nicht angezeigt. Der gesamte Text rundherum wird angezeigt, aber die schreibbaren Bereiche nicht?
Wer kann mir helfen ?
Wenn ich auf Debug.Print gehe, sehe wirklich nur die Inhalte, die nicht schreibbar sind. Wäre wirklich sehr dankbar. Danach möchte ich die einzelnen Bereiche in Excel übernehmen, damit ich die Datensätze in Excel übernehmen kann. Ansonsten tippe ich aktuell alles selber ein und das macht wenig Sinn.
Sub Lese_PDF()
Dim word_app As Word.Application
Dim word_doc As Word.Document
Dim PDFFolder, ExportFile As String
Dim Pfad As String
Dim dlg As FileDialog
Dim ausgewaehlterPfad As String
Dim clean_text, table_text, summary_text, all_text, file_name As String
Dim txt_line_1, text_line_2, city_name, item_name, zip_code As String
Dim words_arrayss_1() As String, words_array_2() As String
Set word_app = New Word.Application
word_app.Visible = False
word_app.DisplayAlerts = False
Dim objRe As New RegExp
objRe.MultiLine = True
objRe.Global = True
Set dlg = Application.FileDialog(msoFileDialogFilePicker)
If dlg.Show = -1 Then
ausgewaehlterPfad = dlg.SelectedItems(1)
Else
Exit Sub
End If
file_name = ausgewaehlterPfad
Set word_doc = word_app.Documents.Open(file_name, False)
all_text = word_doc.content
objRe.Pattern = "(^.*Kundeninformationen)(.*)(Name u. Unterschrift.*)"
table_text = objRe.Replace(all_text, "$2")
summary_text = objRe.Replace(all_text, "$1")
Debug.Print summary_text
word_doc.Close True
word_app.Quit
End Sub