Excel SORT-Funktion - automatisches Sortieren von Daten mithilfe einer Formel

  • Teile Das
Michael Brown

Sie lernen eine Formel kennen, mit der Sie in Excel alphabetisch sortieren, Zahlen in aufsteigender oder absteigender Reihenfolge anordnen, nach mehreren Spalten sortieren und vieles mehr.

Die Sortierfunktion gibt es schon lange, aber mit der Einführung von dynamischen Arrays in Excel 365 wurde eine verblüffend einfache Möglichkeit zum Sortieren mit Formeln geschaffen. Das Schöne an dieser Methode ist, dass die Ergebnisse automatisch aktualisiert werden, wenn sich die Quelldaten ändern.

    Excel-Funktion SORT

    Die Funktion SORT in Excel sortiert den Inhalt eines Arrays oder Bereichs nach Spalten oder Zeilen in aufsteigender oder absteigender Reihenfolge.

    SORT gehört zur Gruppe der dynamischen Array-Funktionen. Das Ergebnis ist ein dynamisches Array, das automatisch vertikal oder horizontal auf benachbarte Zellen übergreift, je nach Form des Quell-Arrays.

    Die Syntax der Funktion SORT lautet wie folgt:

    SORT(array, [sort_index], [sort_order], [by_col])

    Wo:

    Array (erforderlich) - ist ein Array von Werten oder ein Bereich von Zellen, die sortiert werden sollen. Dies können beliebige Werte sein, einschließlich Text, Zahlen, Daten, Zeiten usw.

    Sortieren_index (optional) - eine ganze Zahl, die angibt, nach welcher Spalte oder Zeile sortiert werden soll; wird sie weggelassen, wird der Standardindex 1 verwendet.

    Sortieren_Reihenfolge (optional) - definiert die Sortierreihenfolge:

    • 1 oder weggelassen (Standard) - aufsteigende Reihenfolge, d. h. vom kleinsten zum größten
    • -1 - absteigende Reihenfolge, d. h. vom größten zum kleinsten Wert

    By_col (optional) - ein logischer Wert, der die Richtung der Sortierung angibt:

    • FALSE oder weggelassen (Voreinstellung) - Sortierung nach Zeilen. Sie werden diese Option meistens verwenden.
    • TRUE - Sortieren nach Spalten: Verwenden Sie diese Option, wenn Ihre Daten horizontal in Spalten organisiert sind, wie in diesem Beispiel.

    Excel SORT-Funktion - Tipps und Hinweise

    SORT ist eine neue dynamische Array-Funktion und hat als solche einige Besonderheiten, die Sie beachten sollten:

    • Derzeit ist die SORT-Funktion nur in Microsoft 365 und Excel 2021 verfügbar. Excel 2019 und Excel 2016 unterstützen keine dynamischen Array-Formeln, daher ist die SORT-Funktion in diesen Versionen nicht verfügbar.
    • Wenn das von einer SORT-Formel zurückgegebene Array das Endergebnis ist (d.h. nicht an eine andere Funktion übergeben wird), erstellt Excel dynamisch einen entsprechend großen Bereich und füllt ihn mit den sortierten Werten auf. Stellen Sie also sicher, dass Sie immer genügend leere Zellen unter oder/und rechts von der Zelle haben, in die Sie die Formel eingeben, da sonst ein #SPILL-Fehler auftritt.
    • Die Ergebnisse werden dynamisch aktualisiert, wenn sich die Quelldaten ändern. Array nicht automatisch auf neue Einträge ausgedehnt, die außerhalb der referenzierten Formel hinzugefügt werden Array Um solche Elemente aufzunehmen, müssen Sie entweder die Array Referenz in Ihrer Formel, oder konvertieren Sie den Quellbereich in eine Tabelle, wie in diesem Beispiel gezeigt, oder erstellen Sie einen dynamischen benannten Bereich.

    Grundlegende Excel SORT-Formel

    Dieses Beispiel zeigt eine grundlegende Formel zum Sortieren von Daten in Excel in aufsteigender und absteigender Reihenfolge.

    Angenommen, Ihre Daten sind alphabetisch geordnet, wie in der Abbildung unten dargestellt, und Sie möchten die Zahlen in Spalte B sortieren, ohne die Daten zu unterbrechen oder zu vermischen.

    Formel zum Sortieren in aufsteigender Reihenfolge

    Um die Werte in Spalte B vom kleinsten zum größten Wert zu sortieren, ist folgende Formel zu verwenden:

    =SORT(A2:B8, 2, 1)

    Wo:

    • A2:B8 ist der Quellbereich
    • 2 ist die Nummer der Spalte, nach der sortiert werden soll
    • 1 ist die aufsteigende Sortierreihenfolge

    Da unsere Daten in Zeilen organisiert sind, kann das letzte Argument weggelassen werden, um den Standardwert FALSE zu erhalten - Sortierung nach Zeilen.

    Geben Sie die Formel einfach in eine beliebige leere Zelle (in unserem Fall D2) ein, drücken Sie die Eingabetaste, und die Ergebnisse werden automatisch in D2:E8 übertragen.

    Formel zum Sortieren in absteigender Reihenfolge

    Um die Daten absteigend zu sortieren, d.h. von der größten zur kleinsten Zahl, setzen Sie die sort_order Argument auf -1 zu setzen, etwa so:

    =SORT(A2:B8, 2, -1)

    Geben Sie die Formel in die obere linke Zelle des Zielbereichs ein, und Sie erhalten dieses Ergebnis:

    In ähnlicher Weise können Sie Textwerte in alphabetischer Reihenfolge von A bis Z oder von Z bis A sortieren.

    Sortieren von Daten in Excel mithilfe einer Formel

    Die folgenden Beispiele zeigen einige typische Verwendungen der Funktion SORT in Excel und einige nicht-triviale Verwendungen.

    Excel SORT nach Spalte

    Wenn Sie Daten in Excel sortieren, ändern Sie in den meisten Fällen die Reihenfolge der Zeilen. Wenn Ihre Daten jedoch horizontal mit Zeilen, die Beschriftungen enthalten, und Spalten, die Datensätze enthalten, organisiert sind, müssen Sie möglicherweise von links nach rechts und nicht von oben nach unten sortieren.

    Um in Excel nach Spalten zu sortieren, setzen Sie die by_col in diesem Fall auf TRUE, sort_index steht für eine Zeile, nicht für eine Spalte.

    Um zum Beispiel die untenstehenden Daten nach Menge zu sortieren, verwenden Sie diese Formel:

    =SORT(B1:H2, 2, 1, TRUE)

    Wo:

    • B1:H2 sind die zu sortierenden Quelldaten
    • 2 ist der Sortierindex, da wir die Zahlen in der zweiten Zeile sortieren
    • -1 zeigt die absteigende Sortierreihenfolge an
    • TRUE bedeutet, dass die Spalten sortiert werden, nicht die Zeilen.

    Sortieren nach mehreren Spalten in unterschiedlicher Reihenfolge (mehrstufige Sortierung)

    Wenn Sie mit komplexen Datenmodellen arbeiten, benötigen Sie oft eine mehrstufige Sortierung. Kann das mit einer Formel gemacht werden? Ja, ganz einfach! Sie müssen lediglich Array-Konstanten für die sort_index und sort_order Argumente.

    Um zum Beispiel die folgenden Daten zuerst nach Region (Spalte A) von A bis Z, und dann durch Menge (Spalte C) von der kleinsten bis zur größten Zahl die folgenden Argumente an:

    • Array sind die Daten in A2:C13.
    • Sortieren_index ist die Array-Konstante {1,3}, denn wir sortieren zunächst nach Region (1. Spalte), und dann durch Menge (3. Spalte).
    • Sortieren_Reihenfolge ist die Array-Konstante {1,-1}, da die 1. Spalte in aufsteigender und die 3. Spalte in absteigender Reihenfolge sortiert werden soll.
    • By_col wird weggelassen, weil wir die Zeilen sortieren, was Standard ist.

    Setzt man die Argumente zusammen, erhält man diese Formel:

    =SORT(A2:C13, {1,3}, {1,-1})

    Die Textwerte in der ersten Spalte sind alphabetisch sortiert und die Zahlen in der dritten Spalte vom größten zum kleinsten Wert:

    Sortieren und Filtern in Excel

    Wenn Sie Daten nach bestimmten Kriterien filtern und die Ausgabe in eine bestimmte Reihenfolge bringen möchten, verwenden Sie die Funktionen SORT und FILTER zusammen:

    SORT(FILTER(array, kriterien_bereich = Kriterien ), [sort_index], [sort_order], [by_col])

    Die Funktion FILTER ruft ein Array von Werten ab, die auf den von Ihnen definierten Kriterien basieren, und übergibt dieses Array an das erste Argument von SORT.

    Das Beste an dieser Formel ist, dass sie die Ergebnisse auch als dynamischen Überlaufbereich ausgibt, ohne dass Sie Strg + Umschalt + Eingabe drücken oder raten müssen, in wie viele Zellen sie kopiert werden soll. Wie üblich geben Sie eine Formel in die oberste Zelle ein und drücken die Eingabetaste.

    Als Beispiel werden wir Artikel mit einer Menge von 30 oder mehr (>=30) aus den Quelldaten in A2:B9 extrahieren und die Ergebnisse in aufsteigender Reihenfolge anordnen.

    Dazu richten wir zunächst die Bedingung ein, z. B. in Zelle E2, wie in der folgenden Abbildung gezeigt, und erstellen dann unsere Excel-SORT-Formel auf diese Weise:

    =SORT(FILTER(A2:B9, B2:B9>=E2), 2)

    Abgesehen von Array die von der Funktion FILTER erzeugt wird, geben wir nur die sort_index Die beiden anderen Argumente werden weggelassen, weil die Standardwerte genau so funktionieren, wie wir es brauchen (aufsteigend, nach Zeilen sortieren).

    Ermitteln der N größten oder kleinsten Werte und Sortieren der Ergebnisse

    Bei der Analyse großer Datenmengen besteht oft die Notwendigkeit, eine bestimmte Anzahl von Spitzenwerten zu extrahieren. Vielleicht nicht nur zu extrahieren, sondern auch in der gewünschten Reihenfolge anzuordnen. Und idealerweise auszuwählen, welche Spalten in die Ergebnisse aufgenommen werden sollen. Klingt kompliziert? Nicht mit den neuen dynamischen Array-Funktionen!

    Hier ist eine allgemeine Formel:

    INDEX(SORT(...), SEQUENCE( n ), { spalte1_zur_rückgabe , spalte2_zur_rückkehr , ...})

    Wo n ist die Nummer der Werte, die Sie zurückgeben möchten.

    Nehmen wir an, Sie möchten aus dem unten stehenden Datensatz eine Top-3-Liste auf der Grundlage der Zahlen in Spalte C erstellen.

    Dazu sortieren Sie zunächst das Array A2:C13 nach der dritten Spalte in absteigender Reihenfolge:

    SORT(A2:C13, 3, -1)

    Und dann schachteln Sie die obige Formel in die erste ( Array ) der Funktion INDEX, um das Array vom höchsten zum kleinsten Wert zu sortieren.

    Für die zweite ( zeilen_nummer ), das angibt, wie viele Zeilen zurückgegeben werden sollen, generieren Sie die erforderlichen fortlaufenden Zahlen mit der Funktion SEQUENCE. Da wir drei obere Werte benötigen, verwenden wir SEQUENCE(3), was dasselbe ist wie die Eingabe einer vertikalen Array-Konstante {1;2;3} direkt in der Formel.

    Für die dritte ( Spalte_Zahl ), das angibt, wie viele Spalten zurückgegeben werden sollen, geben Sie die Spaltennummern in Form einer horizontalen Array-Konstante an. Wir wollen die Spalten B und C zurückgeben, also verwenden wir das Array {2,3}.

    Schließlich erhalten wir die folgende Formel:

    =INDEX(SORT(A2:C13, 3, -1), SEQUENCE(3), {2,3})

    Und es bringt genau die Ergebnisse, die wir wollen:

    Zur Rückkehr 3 Boden Werte, sortieren Sie einfach die Originaldaten vom kleinsten zum größten Wert. sort_order Argument von -1 bis 1:

    =INDEX(SORT(A2:C13, 3, 1), SEQUENCE(3), {2,3})

    Rückgabe eines sortierten Wertes an einer bestimmten Position

    Was ist, wenn Sie nur eine bestimmte Sortierposition zurückgeben möchten, z. B. nur den ersten, nur den zweiten oder nur den dritten Datensatz aus der sortierten Liste? Verwenden Sie dazu die oben beschriebene vereinfachte Version der Formel INDEX SORT:

    INDEX(SORT(...), n , { spalte1_zur_rückgabe , spalte2_zur_rückkehr , ...})

    Wo n ist die Position von Interesse.

    Um beispielsweise eine bestimmte Position von oben (d. h. von den abwärts sortierten Daten) zu erhalten, verwenden Sie diese Formel:

    =INDEX(SORT(A2:C13, 3, -1), F1, {2,3})

    Um eine bestimmte Position von unten (d.h. von den aufsteigend sortierten Daten) zu erhalten, verwenden Sie diese:

    =INDEX(SORT(A2:C13, 3, 1), I1, {2,3})

    Dabei sind A2:C13 die Quelldaten, F1 die Position von oben, I1 die Position von unten und {2,3} die zurückzugebenden Spalten.

    Excel-Tabelle verwenden, um das Sortierfeld automatisch zu erweitern

    Wie Sie bereits wissen, wird das sortierte Array automatisch aktualisiert, wenn Sie Änderungen an den Originaldaten vornehmen. Dies ist das Standardverhalten aller dynamischen Array-Funktionen, einschließlich SORT. Wenn Sie jedoch neue Einträge außerhalb des referenzierten Arrays hinzufügen, werden diese nicht automatisch in eine Formel aufgenommen. Wenn Sie möchten, dass Ihre Formel auf solche Änderungen reagiert, konvertieren Sie den Quellbereich in einen vollständig-funktionale Excel-Tabelle und verwenden Sie strukturierte Verweise in Ihrer Formel.

    Um zu sehen, wie es in der Praxis funktioniert, betrachten Sie bitte das folgende Beispiel.

    Angenommen, Sie verwenden die folgende Excel-SORT-Formel, um die Werte im Bereich A2:B8 in alphabetischer Reihenfolge anzuordnen:

    =SORT(A2:B8, 1, 1)

    Dann geben Sie einen neuen Eintrag in Zeile 9 ein... und stellen enttäuscht fest, dass der neu hinzugefügte Eintrag nicht im Überlaufbereich enthalten ist:

    Konvertieren Sie nun den Quellbereich in eine Tabelle. Markieren Sie dazu einfach Ihren Bereich einschließlich der Spaltenüberschriften (A1:B8) und drücken Sie Strg + T. Wenn Sie Ihre Formel erstellen, markieren Sie den Quellbereich mit der Maus, und der Tabellenname wird automatisch in die Formel eingefügt (dies wird als strukturierte Referenz bezeichnet):

    =SORT(Tabelle1, 1, 1)

    Wenn Sie einen neuen Eintrag direkt unter der letzten Zeile eingeben, wird die Tabelle automatisch erweitert, und die neuen Daten werden in den Überlaufbereich der SORT-Formel aufgenommen:

    Excel SORT-Funktion funktioniert nicht

    Wenn Ihre SORT-Formel zu einem Fehler führt, hat das höchstwahrscheinlich die folgenden Gründe.

    #NAME-Fehler: ältere Excel-Version

    SORT ist eine neue Funktion und funktioniert nur in Excel 365 und Excel 2021. In älteren Versionen, in denen diese Funktion nicht unterstützt wird, tritt ein #NAME?-Fehler auf.

    #SPILL-Fehler: etwas blockiert den Spill-Bereich

    Wenn eine oder mehrere Zellen im Überlaufbereich nicht vollständig leer oder verschmolzen sind, wird ein #SPILL!-Fehler angezeigt. Um ihn zu beheben, entfernen Sie einfach die Blockade. Weitere Informationen finden Sie unter Excel #SPILL!-Fehler - was er bedeutet und wie man ihn behebt.

    #VALUE Fehler: ungültige Argumente

    Wann immer Sie auf einen #VALUE!-Fehler stoßen, überprüfen Sie die sort_index und sort_order Argumente. Sortieren_index sollte die Anzahl der Spalten nicht überschreiten ist Array und sort_order sollte entweder 1 (aufsteigend) oder -1 (absteigend) sein.

    #REF-Fehler: Quell-Arbeitsmappe ist geschlossen

    Da dynamische Arrays Verweise zwischen Arbeitsmappen nur begrenzt unterstützen, müssen für die Funktion SORT beide Dateien geöffnet sein. Wenn die Quell-Arbeitsmappe geschlossen ist, führt eine Formel zu einem #REF!-Fehler. Um diesen zu beheben, öffnen Sie einfach die referenzierte Datei.

    So sortiert man Daten in Excel mit Hilfe von Formeln. Ich danke Ihnen für die Lektüre und hoffe, Sie nächste Woche in unserem Blog begrüßen zu dürfen!

    Übungsheft zum Herunterladen

    Sortieren in Excel mit Formeln (.xlsx-Datei)

    Michael Brown ist ein begeisterter Technologie-Enthusiast mit einer Leidenschaft für die Vereinfachung komplexer Prozesse mithilfe von Softwaretools. Mit mehr als einem Jahrzehnt Erfahrung in der Technologiebranche hat er seine Fähigkeiten in Microsoft Excel und Outlook sowie Google Sheets und Docs verfeinert. Michaels Blog widmet sich dem Teilen seines Wissens und seiner Expertise mit anderen und bietet leicht verständliche Tipps und Tutorials zur Verbesserung von Produktivität und Effizienz. Egal, ob Sie ein erfahrener Profi oder ein Anfänger sind, Michaels Blog bietet wertvolle Einblicke und praktische Ratschläge, wie Sie diese wichtigen Softwaretools optimal nutzen können.