Excel Power Query Merges – Joins Schritt für Schritt
Du hast zwei Tabellen und willst sie sauber zusammenführen. In Excel wirkt das schnell kompliziert, vor allem wenn Schlüsselspalten nicht perfekt sind oder es mehrere Treffer gibt. Power Query löst das elegant mit Merges, also Joins zwischen Tabellen.
In diesem Guide lernst du, wie du Daten vorbereitest, den richtigen Join-Typ wählst und Ergebnisse verlässlich in dein Arbeitsblatt zurückgibst. Wir gehen Schritt für Schritt vor, nutzen klare Beispiele und zeigen typische Fehler, damit du am Ende stabile und nachvollziehbare Abfragen hast.
Grundlagen: Was ist ein Merge in Power Query
Ein Merge verbindet zwei Abfragen anhand einer oder mehrerer Schlüsselspalten. Das entspricht in Datenbanken einem Join. Wichtig ist die Unterscheidung zu Append: Append hängt Zeilen untereinander, Merge fügt Spalten aus einer zweiten Tabelle neben passende Zeilen.
Power Query bietet verschiedene Join-Typen für unterschiedliche Ziele. Die häufigsten sind Left Outer, Inner, Full Outer, Right Outer, sowie Left Anti und Right Anti. Jeder Typ bestimmt, welche Zeilen in das Ergebnis kommen.
Vorbereitung: saubere Schlüssel, saubere Ergebnisse
Bevor du mergst, prüfe drei Dinge:
- Datentypen angleichen: Beide Schlüsselspalten müssen denselben Datentyp haben, z. B. Text oder Zahl. Mische niemals Text und Zahl in Schlüsselspalten.
- Trimmen und normalisieren: Entferne führende und doppelte Leerzeichen und vereinheitliche Schreibweisen. Für Texte hilft GLÄTTEN/Trim in Excel oder Transformieren – Werte ersetzen/Leerzeichen entfernen in Power Query.
- Eindeutigkeit kennen: Weißt du, ob der Schlüssel eindeutig ist. Bei 1:n Beziehungen ist das normal, du musst dann beim Erweitern entscheiden, wie du mehrere Treffer behandelst.
Joins Schritt für Schritt an einem Beispiel
Wir haben zwei Tabellen: Kunden (KundenID, Name, Stadt) und Bestellungen (BestellID, KundenID, Datum, Betrag).
Schritt 1: Daten in Power Query laden
Markiere eine Tabelle in Excel, gehe auf Daten – Aus Tabelle/Bereich. Wiederhole das für beide Tabellen. Benenne die Abfragen sinnvoll, z. B. Kunden und Bestellungen.
Schritt 2: Schlüsselspalten prüfen
Öffne jede Abfrage und stelle den Datentyp der KundenID auf Zahl oder Text, aber identisch in beiden Tabellen. Entferne Leerzeichen und prüfe auf Null-Werte.
Schritt 3: Merge starten
Öffne die Abfrage Kunden und wähle Start – Abfragen kombinieren – Abfragen als neue Abfrage zusammenführen. Wähle oben Kunden, unten Bestellungen, markiere jeweils die KundenID. Unten wählst du den Join-Typ.
Schritt 4: Join-Typ wählen
- Left Outer: Alle Kunden, dazu passende Bestellungen.
- Inner: Nur Kunden mit Bestellungen.
- Full Outer: Alle Kunden und alle Bestellungen, auch ohne Gegenpart.
- Right Outer: Alle Bestellungen, Kunden nur wenn vorhanden.
- Left Anti: Kunden ohne Bestellungen.
- Right Anti: Bestellungen ohne passenden Kunden.
Schritt 5: Ergebnis erweitern
Nach dem Merge erscheint eine Tabellenspalte. Klicke auf das Erweitern-Symbol. Wähle die Felder aus Bestellungen, die du übernehmen willst, z. B. Datum und Betrag. Deaktiviere optional Ursprünglichen Spaltennamen als Präfix verwenden, wenn du klare Spaltennamen bevorzugst.
Schritt 6: Datentypen setzen und laden
Stelle die neuen Spalten auf korrekte Datentypen (Datum, Dezimalzahl). Klicke auf Schließen und laden, um das Ergebnis ins Blatt oder Datenmodell zu schreiben.
Die Join-Typen im Überblick
Left Outer – der Standardfall
Alle Zeilen aus der linken Tabelle bleiben erhalten. Passende Zeilen aus rechts werden angefügt, fehlende erscheinen als null. Ideal, wenn du eine Stammliste anreichern willst.
Inner – Schnittmenge
Nur Zeilen, die in beiden Tabellen vorkommen. Gut, wenn du aktive Kunden mit mindestens einer Bestellung sehen willst.
Full Outer – alles sehen
Vereinigt alle Zeilen aus beiden Tabellen. Nützlich, um Lücken zu finden, z. B. Bestellungen ohne Kunden oder Kunden ohne Bestellungen.
Right Outer – spiegelverkehrt zum Left
Behält alle Zeilen aus der rechten Tabelle. Wird seltener gebraucht, oft ersetzt durch Left Outer mit vertauschter Reihenfolge.
Left Anti – Unterschiede aufdecken
Zeigt nur Zeilen der linken Tabelle ohne Treffer rechts. Perfekt für Dubletten- oder Lückenanalysen, z. B. Kunden ohne Bestellung.
Right Anti – Gegenstück zum Left Anti
Zeigt nur Zeilen der rechten Tabelle ohne Treffer links, z. B. Bestellungen ohne gültige KundenID.
Mehrspaltige Schlüssel und spezielle Fälle
Manchmal brauchst du zusammengesetzte Schlüssel. Markiere dazu in beiden Tabellen mehrere Spalten in derselben Reihenfolge, z. B. KundenID und Datum. Power Query nutzt dann die Kombination als Join-Basis.
Bei 1:n Beziehungen entstehen beim Erweitern mehrere Zeilen pro linkem Eintrag. Das ist korrekt. Willst du Werte verdichten, nutze nach dem Erweitern Gruppieren und bilde Summen, Anzahlen oder Min/Max.
Typische Fehler und wie du sie behebst
Problem: Keine Treffer trotz identischer Zahlen.
Ursache: Datentypen unterscheiden sich oder Text enthält verdeckte Leerzeichen.
Lösung: Datentypen abgleichen, Trimmen, Nicht druckbare Zeichen entfernen.
Problem: Zu viele Duplikate nach dem Merge.
Ursache: Schlüssel ist nicht eindeutig.
Lösung: Schlüssel prüfen, ggf. zusätzliche Spalten in den Schlüssel aufnehmen oder nach dem Merge Gruppieren.
Problem: Umlaute oder Groß/Kleinschreibung verhindern Treffer.
Lösung: Vorab Normalisieren mit Kleinbuchstaben und Ersetzen. In Power Query: Transformieren – Format – Kleinbuchstaben.
Problem: Leistung bricht bei großen Tabellen ein.
Lösung: Früh filtern, unnötige Spalten entfernen, Typen früh setzen, Ladevorgänge deaktivieren für Zwischenschritte, nur relevante Spalten mergen.
Bonus: Ein Blick auf den M-Code
Nach einem Left Outer Merge sieht der M-Code ähnlich aus:
let
Quelle = Excel.CurrentWorkbook(){[Name="Kunden"]}[Content],
Kunden = Table.TransformColumnTypes(Quelle,{{"KundenID", Int64.Type}}),
BestellungenQuelle = Excel.CurrentWorkbook(){[Name="Bestellungen"]}[Content],
Bestellungen = Table.TransformColumnTypes(BestellungenQuelle,{{"KundenID", Int64.Type},{"Betrag", type number}}),
Merge = Table.NestedJoin(Kunden, {"KundenID"}, Bestellungen, {"KundenID"}, "Bestellungen", JoinKind.LeftOuter),
Erweitert = Table.ExpandTableColumn(Merge, "Bestellungen", {"Datum","Betrag"}, {"Bestelldatum","Betrag"})
in
Erweitert
Das hilft dir, Abfragen nachvollziehbar zu halten und bei Bedarf parametrisierte Merges zu bauen.
Praxis-Tipps für saubere Ergebnisse
Halte Benennungen konsistent, dokumentiere Join-Logik in einem Kommentarschritt, und speichere Zwischenstände als Abfragen, damit du Fehler schneller siehst. Baue dir eine kleine Qualitätsprüfung ein, z. B. Anzahl Zeilen vor/nach Merge, Anzahl Null-Werte in Schlüsseln und Stichproben auf unerwartete Duplikate.
Fazit
Mit Power Query erledigst du Joins in Excel transparent und reproduzierbar. Wenn Schlüsselspalten stimmen, Datentypen passen und du den richtigen Join-Typ wählst, bekommst du Ergebnisse, auf die du dich verlassen kannst. Arbeite Schritt für Schritt, erweitere nur benötigte Spalten, setze Datentypen konsequent und prüfe das Resultat mit kleinen Qualitätschecks. So werden deine Merges robust und dein Reporting deutlich einfacher.


Hinterlasse einen Kommentar
An der Diskussion beteiligen?Hinterlasse uns deinen Kommentar!