Excel-TippSo fügen Sie Listeneinträge in eine einzelne Zelle ein
Das Gruppieren und Aggregieren von Zahlen einer Liste ist eine häufige Excelaufgabe in der täglichen Praxis. Dafür können Sie Pivot-Tabellen oder die bekannten Funktionen wie SUMMEWENN(), ZÄHLENWENN() etc. einsetzen.
Wie aber können Sie vorgehen, wenn Sie Texte aus einer Liste in eine Zelle zusammenführen wollen? Das funktioniert auch ohne komplizierten Formeln. Mit Power Query ist dies ohne großen Aufwand möglich.
Beispiel: Bestandsliste mit Personenzuordnung
Schauen Sie sich das „Gruppieren von Texten“ an einem Beispiel an. In der folgenden Abbildung sehen Sie eine Liste, in der Personen aufgelistet sind und die Geräte, die jeweils zugewiesen sind. Hat eine Person mehrere Geräte, gibt es in der Liste entsprechend viele Einträge (Zeilen).
Die Liste soll nun in der Weise aggregiert werden, dass pro Person nur noch eine Zeile dargestellt wird und in einer Zelle, dann alle Geräte hintereinander getrennt durch ein Komma aufgeführt werden. Sie finden die gewünschte Liste in der folgenden Abbildung.
Wie Sie Einträge in einer Excel-Liste zusammenführen
Um die Liste zu aggregieren, gehen Sie wie folgt vor. Klicken Sie auf irgendeine Zelle in der Liste und aktivieren Sie im Menüband die Befehlsfolge Registerkarte Daten > Befehlsgruppe Daten abrufen und transformieren > Befehl Aus Tabelle/Bereich.
Es öffnet sich der Power Query Editor und die Liste mit den Geräten wird als Abfrage angezeigt.
Da die Liste nach Vor- und Nachname aggregiert werden soll, markieren Sie die Spalten Vorname und Nachname, indem Sie bei gedrückter Strg-Taste auf die jeweiligen Spaltennamen klicken.
Aktivieren Sie anschließend im Menüband die Befehlsfolge Registerkarte Transformieren > Befehlsgruppe Tabelle > Befehl Gruppieren nach.
Es öffnet sich das Dialogfeld Gruppieren nach. Dadurch, dass Sie die Spalten Vorname und Nachname vorher markiert haben, sind diese beiden Spalten bereits als Gruppierungen ausgewählt.
Vergeben Sie unten unter Neuer Spaltenname einen aussagekräftigen Namen für die Spalte, in der die verschiedenen Geräte aggregiert werden sollen. Im Beispiel ist dies der Spaltenname Equipment.
Unter Vorgang wählen Sie die Funktion Summe aus. Und unter Spalte müssen Sie Geräte auswählen, da diese in einer Zelle hintereinander dargestellt werden sollen.
Bestätigen Sie Ihre Einstellungen, indem Sie das Dialogfeld durch Klick auf OK schließen.
Die Liste wird aggregiert, sodass pro Person nur noch eine Zeile dargestellt wird.
Allerdings gibt es einen Fehler in der Spalte Equipment. Dieser Fehler kommt daher, dass die Funktion Summe im vorherigen Dialogfeld (Vorgang) ausgewählt wurde und die Spalte Geräte Texte als Inhalt hat. Texte kann man nicht summieren.
Diese Fehlermeldung korrigieren Sie, indem Sie direkt in den M-Code von Power Query eingreifen. In der Bearbeitungsleiste können Sie den Code für die aggregierte Darstellung der Liste einsehen.
Sie müssen nun die Summenfunktion List.Sum im M-Code durch eine Funktion für die Aggregierung von Texten austauschen.
Ersetzen Sie oben in der Befehlszeile des Power-Query-Editors die Funktion List.Sum durch Text.Combine.
Da die Funktion noch ein zweites Argument benötigt, nämlich das Trennzeichen, durch das die einzelnen Texte getrennt werden sollen, erfassen Sie nach [Geräte] daher ein Komma und setzen das Trennzeichen in Anführungszeichen ("").
Im Beispiel ist das Trennzeichen ein Komma und ein darauffolgendes Leerzeichen. Der korrigierte Code sieht daher wie folgt aus (siehe folgende Abbildung):
Text.Combine([Geräte],", ")
Nach der Änderung des Codes werden die Geräte jetzt hintereinander und durch Komma getrennt in der jeweiligen Zelle dargestellt.
Sie können die aggregierte Abfrage jetzt wieder in Ihre Excel-Datei zurückspielen, indem Sie im Menüband die Befehlsfolge Registerkarte Datei > Befehl Schließen & laden klicken.
Sie erhalten daraufhin in einem neuen Tabellenblatt die neue Liste mit der gewünschten Darstellung aller Geräte einer Person in einer Zelle (siehe Spalte C).