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.
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].
- 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.
Fazit: Eine problemlos auswertbare Liste mit korrekten Kundendaten
Nach wenigen Handgriffen ist das Problem gelöst und mein Ergebnis sieht so aus:
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.