Excel-TippWie Sie mit der Funktion SORTIEREN() Daten sortiert anzeigen
Die Funktion SORTIEREN() an einem Beispiel erklärt
Die Excel-Funktion SORTIEREN() ist eine dynamische Funktion. Ändert sich die Ausgangsliste oder das Sortierkriterium, dann wird die sortierte Liste automatisch aktualisiert.
Schauen wir uns die Funktionsweise von SORTIEREN() an einem Beispiel an. In der folgenden Abbildung finden Sie links die Liste (A1:C11), die automatisch nach der Abteilungsbezeichnung rechts daneben aufsteigend sortiert dargestellt werden soll.
Erfassen Sie hierzu die folgende Formel in die Zelle F5
=SORTIEREN(A2:C11;3;1)
Sie bekommen daraufhin automatisch die Liste sortiert nach der Abteilungsbezeichnung dargestellt.
Hinweis: Da SORTIEREN() eine dynamische Funktion ist, braucht sie genug Platz für die Anzeige des Ergebnisses. Achten Sie deshalb darauf, dass im Ausgabebereich (hier der Bereich F2:H11) keine anderen Einträge stehen. Ansonsten erhalten Sie die Fehlermeldung #ÜBERLAUF!
Ändern Sie einen Eintrag in der ursprünglichen Liste im Bereich A2:C11, dann wird dies sofort auch im sortierten Bereich F2:H11 angezeigt. Die sortierte Liste ist also immer aktuell und richtig sortiert.
Dynamische Listen mit Leerzeilen sortieren
So können Sie beispielsweise eine Liste für die Dateneingabe führen, in der Sie neue Einträge einfach unter die bestehenden schreiben. In der Tabelle mit den sortierten Daten (oder in einem gesonderten Tabellenblatt) haben Sie dann immer das sortierte Ergebnis.
Dazu erweitern Sie den Bereich, den Sie sortieren wollen, so, dass Sie neue Daten unten ergänzen können. Beispiel: Sie wollen später weitere Namen ab Zeile 12 (bis vermutlich Zeile 20) erfassen und im Bereich F1:H20 sortiert ausgeben. Die Sortier-Formel dazu lautet:
=SORTIEREN(A2:C20;3;1)
In der sortierten Liste wird in den Zeilen 12 bis 20 allerdings der Wert 0 angezeigt. Um das zu verhindern, fangen Sie diese Ausgabe ab mit folgender Formel:
=WENN(A2:A20="";"";SORTIEREN(A2:C20;3;1;FALSCH))
Und richtig dynamisch wird es, wenn Sie die zu sortierende Tabelle als dynamische Tabelle anlegen wie in der folgenden Abbildung mit dem Tabellennamen „Tabelle1“. Dann kann diese Tabelle beliebig lang werden. Und mit dieser Formel wird sortiert:
=WENN(Tabelle1="";"";SORTIEREN(Tabelle1;3;1;FALSCH))
Die Parameter und Einstellungen für die Funktion SORTIEREN()
Schauen wir uns im nächsten Schritt die Syntax von SORTIEREN() anhand des ersten Beispiels genauer an, um die Funktionsweise von SORTIEREN()zu verstehen. Die Syntax lautet wie folgt: =SORTIEREN(Matrix;Sortierindex;Sortierreihenfolge;Nach_Spalte)
Dabei gilt:
- Matrix = Entspricht dem Datenbereich der Liste, der nach einem Kriterium sortiert werden soll. Die Kopfzeile ist nicht Bestandteil dieses Bereiches. Deshalb im Beispiel A2:C11.
- Sortierindex = Eine Zahl, welche die Zeilen- oder Spaltennummer angibt, nach der sortiert werden soll. In unserem Beispiel soll nach der Abteilungsbezeichnung sortiert werden. Die Abteilungsbezeichnung ist die dritte Spalte in der Matrix, daher die Zahl 3.
- Sortierreihenfolge = Legt die Art der Sortierung fest. Der Eintrag 1 bedeutet aufsteigende Sortierung, während -1 eine absteigende Sortierung ergeben würde. Erfassen Sie hier kein Kriterium, dann wird automatisch aufsteigend sortiert.
- Nach_Spalte = Wenn Sie die Matrix nach Spalten sortieren wollen, dann erfassen hier den Wert WAHR. Wollen Sie die Matrix nach Zeilen sortieren, dann erfassen Sie den Wert FALSCH. Wenn Sie hier keinen Wert erfassen, dann wird standardmäßig nach Zeilen sortiert (FALSCH). Im Beispiel sind die Zeilen sortiert; entsprechend wird der Standardeintrag verwendet.
Da Sie nur ein Kriterium zur Sortierreihenfolge eingeben können, können Sie die Daten mit SORTIEREN() nicht nach einem zweiten Kriterium – im Anschluss – sortieren. Eine Sortierung „erst nach Abteilung“ dann nach „Nachname“ ist also nicht möglich.