Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1956to1960
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

PDF-Formulare in Excel-Tabelle extrahieren

PDF-Formulare in Excel-Tabelle extrahieren
08.12.2023 14:40:28
Taner
Hallo zusammen,

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

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: PDF-Formulare in Excel-Tabelle extrahieren
08.12.2023 14:47:13
Oberschlumpf
Hi,

a) dein Code ist ein WORD-Makro, du bist hier aber in einem EXCEL-Forum...das weißt du, oder?

b) kannst du uns bitte per Upload eine Bsp-PDF-Datei zeigen, mit der wir testen können?

Zumindest ich kann ohne Bsp-Datei nicht helfen.

Ciao
Thorsten
AW: PDF-Formulare in Excel-Tabelle extrahieren
08.12.2023 15:09:24
Taner
Also ich konnte es nur als .jpg hinzufügen, weil PDF nicht erlaubt ist. Ich kriege alle Bereiche gelesen mit dem Code in Excel, aber nicht, die ich eigentlich will, damit ich mir in Excel eine Datenbank aufbauen kann. Die PDF kommt per Mail an und dann muss ich mühsam, dass ganze in Excel einzeln übernehmen.
Anzeige
AW: PDF-Formulare in Excel-Tabelle extrahieren
08.12.2023 15:35:10
Oberschlumpf
vor dem Upload könntest du die Bsp-PDF-Datei in eine ZIP-Datei packen, z Bsp mit 7Zip.
Und die ZIP-Datei kannst du dann hier uploaden - ZIP ist erlaubt
AW: PDF-Formulare in Excel-Tabelle extrahieren
08.12.2023 15:37:19
Oberschlumpf
ach ja, die jpg-Datei sehen wir nicht - du musst nach jedem Upload den Link zur Datei kopieren und in deiner nächsten Antwort einfügen.
Das selbe gilt natürlich auch gleich für die ZIP-Datei.
Den Link zur jpg-Datei musst du nicht mehr zeigen, da es ja nur ein Bild ist - und das kann auch mit deinem Makro nicht ausgelesen werden.
AW: PDF-Formulare in Excel-Tabelle extrahieren
08.12.2023 15:45:46
Taner
Habe ich gemacht:

So sieht es bei mir aus

Userbild

Die ausgefüllten Bereiche werden nicht mit meinem Code übernommen.
Anzeige
AW: PDF-Formulare in Excel-Tabelle extrahieren
08.12.2023 15:57:07
Oberschlumpf
und noch mal:
Bilder können mit deinem Code zum Auslesen von PDF's NICHT bearbeitet, oder eben ausgelesen werden!
zeig doch bitte die PDF-Datei per Upload...mit den obigen eingegeben Daten...oder wenn das nicht geht...dann nur die PDF-Datei....die Daten können dann ja auch wir eintragen...
es ist möglich, aber...
08.12.2023 16:51:17
Oberschlumpf
Hi,

auch wenn du eine PDF-Bsp-Datei nicht zeigst, war ich neugierig.

So hab ich mir eine PDF-Datei mit Eingabefelder im Internet gesucht,gefunden,runtergeladen und mit deinem Makro getestet.
Ja, ich kann bestätigen:

- Eingabefelder in PDF-Datei wurden von mir ausgefüllt
- PDF-Datei mit Daten in Eingabefelder wurde unter anderem Dateinamen gespeichert
- nach öffnen der PDF-Datei mit Daten in einem PDF-Viewer zeigt auch alle zuvor eingegebenen Daten an

- aber das Auslesen all dieser Daten mit deinem Makro funktioniert...nicht

Ich hab dann mit Hilfe des Tools Pdf2Txt die mit Daten gespeicherte PDF-Datei in eine txt-Datei konvertiert = alle Daten wurden in der txt-Datei gespeichert!

Vielleicht kommst du ja mit dem Tool Pdf2Txt weiter.

vielleicht-Problem:
- das Tool schreibt wirklich alles an Text aus der PDF-Datei in eine txt-Datei, und zumindest bei meinem Test ziemlich wild durcheinander
- du musst dann also in Excel die txt-Datei einlesen, Zeile für Zeile nach den Stellen suchen, die du finden willst, und so könntest du dann die Daten, die dich interessieren, nach Excel übertragen.

Viel Erfolg.

Ciao
Thorsten
Anzeige
AW: PDF-Formulare in Excel-Tabelle extrahieren
08.12.2023 14:51:04
Taner
Wie meinst du Word?!

Ich benutze Excel, den Code von Word habe ich benutzt, damit ich die Texte in Pdf direkt herziehen kann, wie willst du das den sonst machen?!

Es funktioniert ja, bis zu einem gewissen Level.
AW: PDF-Formulare in Excel-Tabelle extrahieren
08.12.2023 14:53:19
Oberschlumpf
ok, da ich nur Word-Befehle im Code sah, dacht ich, das sei ein Word-Makro.
Bekommen wir denn noch eine Bsp-PDF-Datei per Upload von dir?

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige