Microsoft Excel

Herbers Excel/VBA-Archiv

Text aus PDF in Excel übertragen und filtern


Betrifft: Text aus PDF in Excel übertragen und filtern von: Christian
Geschrieben am: 24.09.2016 13:33:54

Hallo an alle,

http://astra-consumer.s3-eu-west-1.amazonaws.com/channel-pdfs/channel-pdf-e11caab532ede37c0e9e.pdf

ich bitte euch um Hilfe.
Sehr ihr eine Möglichkeit, auf Grundlage oben genannter PDF eine Excel Liste der deutschsprachigen, frei empfangbaren Sender, sowie denen die gegen Servicepauschale (kostenlos für die ersten 6 Monate) empfangbar sind, zu erstellen?
Mir reichen rein die Sendernamen, alles andere was noch in der Liste steht brauche ich nicht.

Danke für euren Rat
Christian

  

Betrifft: AW: Text aus PDF in Excel übertragen und filtern von: Zwenn
Geschrieben am: 24.09.2016 14:38:58

Hallo Christian,

interessante Aufgabenstellung. Leider habe ich keine Zeit, mich damit eingehend zu beschäftigen. Aber ich war neugierig genug, um mal zu recherchieren.

Hier gibt es wohl eine Lösung, die Du für Deine PDF Datei anpassen musst:
https://www.administrator.de/frage/pdf-auslesen-vba-excel-schreiben-239601.html

Hier kannst Du das Tool PDFtoText runterladen, dass Du für die Lösung benötigst:
http://www.heise.de/download/product/pdf-to-text-39814

Vielleicht hilft Dir das ja schon weiter.

Viele Grüße,

Zwenn


  

Betrifft: AW: Text aus PDF in Excel übertragen und filtern von: Zwenn
Geschrieben am: 24.09.2016 15:08:23

Habe grade festgestellt, dass es PDFtoText in unterschiedlichen Versionen von unterschiedlichen Anbietern gibt. Die von mir verlinkte ist kostenpflichtig und man muss nun erstmal sehen, welche Version im von mir verlinkten Foren Thread verwendet wird.

Da war ich etwas schnell mit dem ungeprüften Ergebnis meiner kurzen Recherche ;-)


  

Betrifft: Link zum richtigen PDFtoText Tool von: Zwenn
Geschrieben am: 24.09.2016 15:27:05

So,

habe den Thread nochmal gelesen und verlinke Dir hier die Seite, auf der du das richtige Tool bekommst, um aus PDF Dateien Text zu extrahieren. Die Datei PDFtoText.exe ist Bestandteil einer kleinen Toolsammlung, die kostenlos ist.

Ich habe das ausprobiert und eine Textdatei erhalten, die den gesamten Inhalt des von Dir verlinkten PDFs enthielt. Man kann noch Parameter verwenden, um Tabellenstrukturen beizubehalten usw. Damit sollte sich eine Text Datei generieren lassen, mit der Du arbeiten kannst.

Im Zweifelsfall musst Du dafür auch nicht die Regex Ausdrücke verwenden, wie im verlinkten Thread, weil Dein PDF eine einzige Tabelle ist. Du müsstest die Text Datei einfach in ein Array einlesen können und ziehst Dir da dann nur die Spalten raus, die Du wirklich haben willst. Ob es wirklich so einfach ist weiß ich aber nicht, weil es auf jeder Seite eine Kopf und Fußzeile gibt. Die müsste man ausfiltern nehme ich an.

Du musst unter Precompiled binaries den Download für Windows auswählen:
http://www.foolabs.com/xpdf/download.html

Viele Grüße,

Zwenn


  

Betrifft: Fertige Liste von: Zwenn
Geschrieben am: 24.09.2016 17:16:43

Hallo Christian,

jetzt hat mich dieses kleine Tool, um Text aus PDFs zu ziehen so gefesselt, dass ich mal die Möglichkeiten anhand Deiner PDF Datei ausprobiert habe. Alles manuell, nix programmiert. Deshalb gibts zwar jetzt eine Liste mit den deutschen, frei empfangbaren und zusätzlich den in den ersten 6 Monaten kostenfreien Sendern, aber falls Du die Liste bei jeder Aktualisierung der PDF Datei neu erstellen willst, musst Du doch noch was programmieren.

Die Liste ist an manchen Stellen nicht ganz vollständig. So sind zwar alle Sender nach Deinen Kriterien enthalten, aber teilweise gingen die Sendernamen über 2 Zeilen. Von diesen wurde jeweils die zweite Zeile gelöscht, als ich die Textdadei nach Excel importiert und dann manuell weiter bearbeitet habe. Außerdem siehst Du teilweise ein Komma hinter "Deutsch" als Sendersprache. Da stand in der Zeile danach noch eine weitere Sprache. Auch die Info ist verloren gegangen.

Wenn man was speziell für das Layout dieser PDF Datei programmiert, könnte man all diese Informationen erhalten. Aber den Kram schnell manuell zusammenzuklicken geht einfach recht schnell. Wenn das also die einzige Datei ist, deren Inhalt Du brauchtest, dann würde ich den Aufwand des Programmierens sein lassen.

Hier ist die fertige Liste (mit ihren kleinen Macken)
https://www.herber.de/bbs/user/108388.xlsx

Hier ist die Textdatei, die ich aus dem PDF erzeugt habe:
https://www.herber.de/bbs/user/108389.txt

Erzeugt mit den Parametern: pdftotext.exe channel-pdf-e11caab532ede37c0e9e.pdf -table -fixed 4

Diese habe ich in Excel importiert, dabei ein paar Formate und eine Spaltenbreite angepaßt und dann manuell bearbeitet. Leere Zeilen gelöscht anhand der ersten Spalte mit den Sendernamen, Dann sortiert nach Sprachen und alle Zeilen gelöscht, die nicht Deutsch als Sendersprache enthielten (dabei sind die jeweils zweiten Zeilen bei den Sendernamen und Sprachen abhanden gekommen). Dann nach Empfangbarkeit sortiert und alle Abo Zeilen gelöscht. Zum Schluss noch einmal sortiert und die 6 Monate kostenfreien Sender entsprechend markiert.

Vielleicht ist Dein Problem damit ja bereits gelöst.

Viele Grüße,

Zwenn


  

Betrifft: AW: Fertige Liste von: Christian
Geschrieben am: 24.09.2016 17:32:31

Hallo Zwenn,

ich hab zwar bislang kein bisschen davon verstanden, wie du das jetzt gemacht hast, bzw. wie das Tool funktioniert. Aber ja, so wie es jetzt ist, reicht es aus.
Danke.

Christian


Beiträge aus den Excel-Beispielen zum Thema "Text aus PDF in Excel übertragen und filtern"