Power Query: Neue oder veränderte Datensätze zwischen zwei Listen identifizieren
16.06.2026
Neue Kunden, neue Produkte oder neue Buchungen – doch welche Datensätze sind seit dem letzten Import tatsächlich hinzugekommen? Wer regelmäßig Listen vergleichen muss, kennt dieses Problem nur zu gut.
Bisher waren dafür oft SVERWEIS-Konstruktionen oder zusätzliche Hilfsspalten notwendig. Mit Power Query geht es jedoch wesentlich einfacher: Neue und veränderte Einträge lassen sich per Abfrage automatisch ermitteln – schnell, zuverlässig und ohne eine einzige Formel.

Per Abfrage neue und veränderte Buchungszeilen stets im Blick haben
In diesem Beitrag zeige ich dazu zwei Lösungswege, um neue bzw. veränderte Einträge automatisch per Abfrage zu ermitteln:
Weg 1: Power Query mit einem Anti-Join
Das ist der klassische und robuste Weg in Power Query. Dabei werden zwei Tabellen miteinander verglichen und gezielt nur die Datensätze ausgegeben, die ausschließlich in der neuen Liste vorkommen.
Weg 2: Power Query mit der Funktion Table.RemoveMatchingRows
Eine kompakte Alternative mit Hilfe von M-Code. Besonders interessant für Anwender, die gerne direkt im Power-Query-Code arbeiten und schlanke Abfragen bevorzugen.
Daten nach Power Query laden und Abfragen erstellen
Im Beispiel sollen in den zwei Beleglisten Belegdaten_alt und Belegdaten_aktuell komplette Zeilen abglichen werden. So gehe ich vor:
- Ich aktiviere eine Zelle in der Tabelle Belegdaten_alt und lade diese mit der Befehlsfolge Daten > Daten abrufen > Aus Tabelle/Bereich nach Power Query.
- Ebenso verfahre ich mit der Tabelle Belegdaten_aktuell.
- In beiden Abfragen bestimme ich für alle Spalten den passenden Datentyp.
Weg 1: Neue oder veränderte Zeilen finden mittels linkem Anti-Join
- Ich markiere zunächst die Abfrage Belegdaten_aktuell.
- Über Start > Abfragen zusammenführen > Als neue Abfrage zusammenführen wähle ich im folgenden Dialog als zweite Abfrage Belegdaten_alt aus [1].
- Für den Abgleich über die komplette Zeile markiere ich in beiden Abfragen mit Hilfe der Strg– oder Umschalt-Taste alle Spalten in der gleichen Reihenfolge [2].
- Unter Join-Art wähle ich Linker Anti-Join [3].

Mit einem linken Anti-Join komplette Zeilen beider Beleglisten abgleichen
Im Ergebnis sehe ich alle neuen bzw. veränderten Zeilen. Da keine Daten aus der Abfrage Belegdaten_alt benötigt werden, lösche ich die Spalte Belegdaten_alt per Rechtsklick im Spaltenkopf mit dem Befehl Entfernen.

Da die Spalte Belegdaten_alt nicht gebraucht wird, kann sie entfernt werden
Weg 2: Neue und veränderte Zeilen finden mit Table.RemoveMatchingRows
- Ich erzeuge eine neue leere Abfrage über Start > Neue Quelle > Andere Quellen > Leere Abfrage.
- In der Bearbeitungsleiste gebe ich folgenden Befehl ein:
= Table.RemoveMatchingRows(Belegdaten_aktuell, Table.ToRecords(Belegdaten_alt))

Eine einzige M-Code-Zeile reicht aus, um zwei Listen abzugleichen
Zur Erläuterung: Die Funktion Table.RemoveMatchingRows entfernt Zeilen aus einer Tabelle, die den angegebenen Kriterien entsprechen. Sie vergleicht die Werte der angegebenen Spalten in der Tabelle mit denen einer bereitgestellten Liste von Datensätzen (Table.ToRecords) und löscht alle passenden Zeilen.
Im Ergebnis sehe ich nun schon alle neuen bzw. veränderten Zeilen.
FAZIT: Welche Methode eignet sich wann?
Power Query mit Anti-Join
Der Anti-Join ist vermutlich die „offizielle“ und am besten nachvollziehbare Methode. Die einzelnen Schritte lassen sich komfortabel über die Oberfläche zusammenklicken und sind später auch für andere Anwender gut verständlich.
Power Query mit der Funktion Table.RemoveMatchingRows
Da diese Variante direkt im M-Code arbeitet, spart sie einige Zwischenschritte. Technisch ist sie elegant und kompakt, allerdings weniger intuitiv für Anwender, die nur gelegentlich und daher mit der Oberfläche von Power Query arbeiten.
Ähnliche Beiträge
-
Power Query: Spaltenüberschriften verständlich statt kryptisch dank einer Matchingtabelle
Das erlebe ich oft: Listen sind gefühlt einen Meter breit und schrecken mit einer Vielzahl kryptischer Spaltenüberschriften ab. Wie bekomme ich diese in eine verständliche Sprache? Muss ich etwa jede...
-
Power Query: Spaltenwerte flexibel und effizient verändern
Soll in Power Query der Inhalt einer Spalte verändert werden, sind dafür auf der Registerkarte Transformieren verschiedene Befehle verfügbar. Allerdings gibt es dort keine Option, die unterschiedliche Werte einer vorhandenen...
-
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....