Fuzzy Matching macht’s möglich: Mit Power Query unvollständige Angaben entschlüsseln und ergänzen
25.04.2020
Mit einer noch recht neuen Funktion in Power Query konnte ich kürzlich ein verzwicktes Datenproblem bei einem meiner Kunden lösen. Und zwar sollten die Außendienstmitarbeiter zusammentragen, welche Kunden sie in den letzten zwei Wochen besucht haben. Eigentlich eine einfache Sache. Doch beim Sichten der abgegebenen Listen wurde schnell klar, dass die eingegebenen Kundennamen von denen im firmeneigenen CRM-System zum Teil abwichen:
- mal wurde der Bindestrich im Namen weggelassen,
- mal wurde der Name abgekürzt,
- mal die Bezeichnung GmbH vergessen.

Die unvollständig eingegebenen Firmennamen links verursachen Probleme beim Zuordnen zu den Stammdaten im CRM-System
Wie lassen sich solche unvollständigen Angaben den Kundendaten im CRM-System zuordnen? Wie können die korrekten Kundennamen und die zugehörigen Kundennummern ermittelt werden?
Ich löste die Aufgabe in 4 Schritten mit einem Fuzzy-Join in Power Query.
Das gibt’s jetzt auch bei Joins: Genaue und ungenaue Übereinstimmung
Mit den Joins in Power Query war es bisher nur möglich, eine Art SVERWEIS mit genauer Übereinstimmung auszuführen, d.h. der gesuchte Wert muss in beiden Tabellen genau dasselbe Aussehen haben.
Doch kürzlich wurde in Power Query das Fuzzy Matching hinzugefügt, welches auch mit einer UNGEFÄHREREN Übereinstimmung in den Spalten zurechtkommt. Das war in diesem Fall die Rettung.
Mit diesen 4 Schritten löse ich das Problem
- Über Daten > Aus Tabelle/Bereich lese ich nacheinander die beiden Listen »Besuchsfirmen« und »Kundenstamm« in Power Query ein.
- Im Register Start wähle ich Kombinieren > Abfragen zusammenführen > Abfragen als neue Abfrage zusammenführen.
- Im Dialog Zusammenführen stelle ich unter [1] die beiden eingelesenen Tabellen ein, markiere dann die zu vergleichenden Spalten [2], aktiviere das Häkchen für Fuzzyübereinstimmungen zum Zusammenführen verwenden [3], setzte schließlich den Schwellenwert für Ähnlichkeit auf 0.6 (Standard: 0.8) [4] und die Maximale Anzahl von Übereinstimmungen auf 1 [5].

Beim Zusammenführen die Option Fuzzyübereinstimmungen ankreuzen
- Nun wähle ich per Klick auf das Doppelpfeilsymbol in der Spalte Firmenstamm die Spalten aus, die ich gerne zu meinem eingegebenen Firmennamen sehen möchte – hier den Firmennamen und die Kundennummer.

Nach dem Matching werden die Spalten bestimmt, die Zusatzinformationen liefern sollen
Fazit: Eine problemlos auswertbare Liste mit korrekten Kundendaten
Nach wenigen Handgriffen ist das Problem gelöst und mein Ergebnis sieht so aus:

Dank Fuzzy Matching werden auch unvollständige Angaben zugeordnet
HINWEIS: In diesem Fall hat der Schwellenwert für Ähnlichkeit von 0.6 eine optimale Lösung gebracht. Welcher Schwellenwert in anderen Konstellationen passt, muss jeweils durch Testen herausgefunden werden.
Ähnliche Beiträge
-
Power Query: Merkmale über mehrere Spalten hinweg filtern
Wer hat schon mal versucht, eine Tabelle in Excel oder Power BI nach Merkmalen zu filtern, die über mehrere Spalten verteilt sind? Standardfilter stoßen hier an ihre Grenzen, denn sie...
-
Power Query: E-Mail-Adressen aus Zeichenketten auslesen
Daten, die in Freitextfelder eingegeben wurden, enthalten oft Details, die gebraucht werden. Beispielsweise E-Mail-Adressen wie in der folgenden Abbildung. Doch wie lassen sich gezielt die E-Mail-Adressen aus diesen Daten auslesen?...
-
Sollten Excel-Einsteiger »Power Query« lernen?
Bisher hätte ich diese Frage eher mit Nein beantwortet. Doch dann kam letzte Woche dieser Excel-Einstiegskurs: Dort berichteten 4 von 7 Teilnehmern, dass sie nicht mit Excel arbeiten und es...