Power Query: Fehler beim Import von PDF-Inhalten korrigieren – zusammenbringen, was zusammengehört
15.02.2024
Power Query kann seit einiger Zeit auch PDFs einlesen. Das klappt mal mehr und mal weniger gut. Manchmal kommen die Inhalte nicht korrekt an, beispielsweise sind Daten in den Zeilen versetzt. Im folgenden Power Query-Rezept zeige ich, wie verrutschte Daten automatisiert den passenden Zeilen zugeordnet werden.

Links das Original mit einer vertikalen Verschiebung nach dem Import aus einer PDF und rechts das mit Power Query korrigierte Ergebnis ohne vertikalen Versatz
Was ist das Problem? Wie lässt es sich lösen?
- Die Daten in der Spalte Artikelnummer sind um eine Zeile nach unten verrutscht.
- Demzufolge müssen die Artikelnummern aus der Folgezeilen den Daten darüber zugeordnet werden.
Diese Panne ist ärgerlich und auf den ersten Blick sieht das nach einem mühsamen manuellen Nachbessern aus. Doch dieser Eindruck täuscht, denn mit Hilfe von zwei Indexspalten lässt sich das Problem in wenigen Schritten lösen.
Die PDF einlesen und die gewünschte Seite oder Tabelle wählen
Zunächst einmal wird die Seite oder die Tabelle aus der PDF importiert und der auszuwertende Teil der PDF für den Import ausgewählt. Dazu gehe ich wie folgt vor:
- Über Daten > Daten abrufen > Aus Datei > Aus PDF lese ich die PDF-Datei in Power Query ein.
- Im Navigationsfenster wähle ich – wie unten gezeigt – die Tabelle oder die Seite (Page) aus.
- Falls sich die Überschriften noch in der ersten Zeile des Datenbereiches befinden, werden diese über Start > Erste Zeile als Überschrift verwenden angehoben.
- Rechts im Aufgabenbereich benenne ich die Abfrage um in Preisliste.
Zwischenfazit: Nach dem Einlesen und dem Versäubern der nicht benötigten Dinge sind zwar alle Daten vorhanden, doch die Artikelnummern sind um eine Zeile nach unten versetzt.
Mit zwei Index-Hilfsspalten die Inhalte korrekt zuordnen
- Um nun jede Artikelnummer aus der Folgezeile der vorhergehenden Zeile zuzuordnen, nutze ich zwei Index-Hilfsspalten.
- Sie bilden die Basis für einen Join der Tabelle mit sich selbst.
Das hört sich zwar kompliziert an, ist es aber nicht. So geht’s:
- Ich erstelle über Spalte hinzufügen > Indexspalte > Von 1 eine erste Indexspalte, die bei 1 beginnt. Sie erhält automatisch den Namen Index.
- Dies wiederhole ich für eine zweite Indexspalte, die aber bei 0 beginnt. Dazu wähle ich die Befehlsfolge Spalte hinzufügen > Indexspalte > Von 0. Die neue Spalte erhält automatisch den Namen Index.1.

Zwei Hilfsspalten mit Indizes, einmal von 1 und einmal von 0 beginnend, sorgen für die passende Zuordnung der Artikelnummern zur jeweilen Zeile
- Nun joine ich die Abfrage mit sich selbst über die Befehlsfolge Start > Abfragen zusammenführen > Abfragen zusammenführen und wähle die Abfragen und die zu kombinierenden Spalten wie in der folgenden Abbildung aus.

Beim Joinen dienen die beiden Index-Hilfsspalten als Schlüssel für die Zuordnung der Artikelnummern zu ihren jeweiligen Zeilen
- Ich markiere die Spalten ArtikelNr., Index und Index.1. Per Rechtsklick im Spaltenkopf wähle ich Spalten entfernen.
- Nun geht’s ans Auspacken der neuen ArtikelNr. durch Klicken auf den Doppelpfeil in der durch den Join entstandenen Spalte Hinzugefügter Index1.

Die alte Spalte ArtikelNr. wurde entfernt, und stattdessen wird nun eine neue Spalte ArtikelNr. aus der gejointen Tabelle entpackt
- In der neuen Spalte ArtikelNr. wähle ich über den Filterpfeil Leere entfernen, um die Leerzeile unten zu löschen.
- Per Rechtsklick in der Spalte ArtikelNr. wähle ich Verschieben > An den Anfang.
- Nun ist alles an seinem richtigen Platz.
- Als letzten Schritt passe ich noch die Datentypen an.

Die Artikelnummern stehen nun in der richtigen Zeile und die Preisliste wurde damit korrekt aus der PDF ausgelesen
Fazit
Es lassen sich nicht nur Daten aus Spalten auf andere Spalten übertragen. Durch Joinen mit Hilfe von Indexspalten können Daten auch über Zeilen hinweg transferiert werden.
Interessiert an mehr Techniken und Tipps zu Power Query?
Wer sein Wissen zu Power Query systematisch auf- und ausbauen will, kann dazu einen meiner Online-Kurse buchen.
Auf dieser Seite gibt es alle aktuellen Termine.
Ähnliche Beiträge
-
Power Query: Ausgeblendete Arbeitsblätter auslesen? So geht’s doch!
Kürzlich erhielt ich den Hilferuf einer Anwenderin, weil sie in Excel mit Power Query nicht auf die Daten in einer anderen Arbeitsmappe zugreifen konnte. Sie wurden im Navigator nicht angezeigt....
-
Power Query: Falsche Datentypen? Drei Tipps, die das verhindern
Es sollte mal wieder schnell gehen und dabei bleib das Festlegen der Datentypen auf der Strecke. Doch spätestens beim nächsten Datenimport rächt sich das. Denn unsachgemäß eingestellte oder bei erneuten...
-
Power Query: Spalten entfernen ja, aber bitte richtig
Kürzlich hatte ich im Kurs eine spannende Diskussion zum Entfernen von Spalten. Die Frage war: Was tun, wenn sich nach dem Entfernen mehrerer Spalten herausstellt, dass es eine zu viel...


