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: Leichter filtern mit List.Contains statt vieler Einzelbedingungen
Wer in Power Query Daten nach Kostenstellen, Artikel-, Kunden- oder Lieferantennummern filtert, kann das mühelos erledigen. Um beispielsweise die Daten in der unten gezeigten grauen Tabelle nach Kostenstellen zu filtern,...
-
Excel: Böse Falle bei Kontrollkästchen vermeiden
Die neuen Kontrollkästchen in Excel 365 sind perfekt, um Informationen visuell auf den Punkt zu bringen: Erledigtes einfach abhaken oder einen Status gut sichtbar mit einem Häkchen dokumentieren. Doch Achtung, im...
-
Geht auch ohne Power Query: Neue und veränderte Zeilen in zwei Listen finden mit Hilfe einer smarten Formel
Wie mit Power Query neue und veränderte Zeilen zwischen zwei Datenbeständen ermittelt werden, habe ich im diesem Blogbeitrag vom 16.06.2026 gezeigt. Aber es geht auch OHNE Power Query! Und zwar...


