Power Query: Wie man leere Zeilen und Spalten mit benutzerdefinierten M-Funktionen herausfiltert
- MirVel
- 6. Apr.
- 3 Min. Lesezeit
Aktualisiert: 19. Apr.
Hast du schon einmal eine Tabelle in Power Query geöffnet und festgestellt, dass sie voller leerer Zeilen und Spalten ist? Ganz schön frustrierend! Die gute Nachricht: Mit einer einfachen benutzerdefinierten M-Funktion kannst du das schnell bereinigen. Lass uns gemeinsam in die Welt von Power Query eintauchen und lernen, wie man diese lästigen leeren Zeilen und Spalten einfach und effektiv entfernt!
Warum das wichtig ist
Bevor wir in den Code eintauchen, schauen wir uns an, warum es überhaupt wichtig ist, leere Zeilen und Spalten zu entfernen. Stell dir vor: Du analysierst einen Datensatz, der wertvolle Erkenntnisse liefern könnte. Jede leere Zeile oder Spalte ist eine Lücke in deinen Daten – und diese Lücken können deine Analyse verfälschen oder zu falschen Schlussfolgerungen führen.
Tatsächlich zeigen Studien, dass Datensätze mit mehr als 5 % leeren Werten die Genauigkeit der Datenanalyse deutlich verringern können. Wenn du diese leeren Elemente entfernst, machst du deine Berichte schlanker und deutlich übersichtlicher.
Aber keine Sorge – Power Query hat genau die richtige Lösung dafür.
Benutzerdefinierte M-Funktion: Dein neuer bester Freund
Kommen wir jetzt zum spannenden Teil. Mit einer benutzerdefinierten M-Funktion kannst du den Prozess zum Entfernen leerer Elemente automatisieren – jedes Mal, wenn du eine neue Tabelle lädst. Diese Funktion ist wiederverwendbar, das heißt: Du musst die Schritte nicht immer wieder manuell durchführen!
Hier ist ein einfacher M-Code-Schnipsel, den du in Power Query verwenden kannst:
let
RemoveEmptyRows = (tbl as table) =>
Table.SelectRows(tbl, each List.NonNullCount(Record.ToList(_)) > 0),
RemoveEmptyColumns = (tbl as table) =>
Table.SelectColumns(tbl, List.Select(Table.ColumnNames(tbl), (col) => List.NonNullCount(Table.Column(tbl, col)) > 0)),
CleanedTable = (tbl as table) => RemoveEmptyColumns(RemoveEmptyRows(tbl))
in
CleanedTable
Dieser Code besteht aus drei Schritten: Er entfernt leere Zeilen, beseitigt leere Spalten und fasst anschließend beide Prozesse in einer bereinigten Tabelle zusammen. Mit dieser Methode stellst du sicher, dass dein Datensatz aussagekräftig und übersichtlich bleibt.
Schritt-für-Schritt-Erklärung
Schauen wir uns den M-Code Schritt für Schritt an, um zu verstehen, wie er funktioniert.
RemoveEmptyRows: Diese Funktion wählt nur die Zeilen aus, die mindestens einen Wert enthalten, also nicht komplett leer sind. Wenn du zum Beispiel eine Tabelle mit 1.000 Zeilen hast und nur 100 davon enthalten überhaupt Werte, dann bleiben diese 100 erhalten – der Rest wird entfernt.
RemoveEmptyColumns: Diese Funktion überprüft jede Spalte darauf, ob sie überhaupt Werte enthält. Falls eine Spalte komplett leer ist, wird sie entfernt. Stell dir vor, du hast 20 Spalten und 5 davon sind komplett leer – genau diese 5 fliegen raus.
CleanedTable: Diese Funktion bringt alles zusammen und liefert dir am Ende eine sauber bereinigte Tabelle. Du kannst sie jedes Mal anwenden, wenn du mit einem neuen Datensatz arbeitest.
Und das Beste: Sobald du neue Daten bekommst, brauchst du nur noch diese Funktion auszuführen – und in wenigen Sekunden hast du eine aufgeräumte, gut strukturierte Tabelle vor dir.
So verwendest du sie
Die Verwendung dieser benutzerdefinierten M-Funktion in Power Query ist ganz einfach. Kopiere einfach den Code in den Erweiterten Editor, ersetze den Namen deiner Zieltabelle und übernimm die Änderungen. Es ist, als würdest du deinen Daten ein frisches, neues Outfit verpassen!
Schritt 1: Öffne eine leere Abfrage in Excel oder Power BI

Schritt 2: Kopiere den M-Code in den Erweiterten Editor und klicke auf „OK“

Schritt 3: Benenne deine neue Funktion um, zum Beispiel in „fx_Remove_xyz…“

Schritt 4: Rufe die Funktion auf der gewünschten Spalte auf – und schon passiert die Magie!
Aus dieser Tabelle hier:

zu dieser Tabelle:

Abschließende Gedanken
Das Bereinigen leerer Zeilen und Spalten kann auf den ersten Blick wie eine lästige Aufgabe wirken – aber mit den M-Funktionen in Power Query wird daraus ein ganz einfacher Schritt! Diese Methode spart dir nicht nur Zeit, sondern verbessert auch die Übersichtlichkeit deiner Daten und verwandelt eine unübersichtliche Tabelle in eine, die voller Potenzial steckt.
Also denk beim nächsten chaotischen Datensatz an diese benutzerdefinierte Funktion. Damit bist du bestens gewappnet, jede Datenherausforderung souverän zu meistern. Viel Spaß beim Abfragen!
Mach deinen M-Code startklar – nutze ihn und verwende ihn immer wieder in Power Query:
Comments