Möchten Sie eine Sortierschaltfläche in Excel hinzufügen? Das Sortieren ist eine einfache Möglichkeit, die höchsten oder niedrigsten Werte in Ihren Daten anzuzeigen. Dies ist eine so häufige Aufgabe in der Datenanalyse, dass eine Schaltfläche, die Ihnen eine Ein-Klick-Methode zum Sortieren Ihrer Daten bietet, Zeit spart!
Sortierschaltfläche mit Filtern hinzufügen
Wenn Sie eine tabellarische Datensammlung in Excel haben, können Sie den Spaltenüberschriften Schalter hinzufügen, mit denen Sie die Daten sortieren und filtern können. Dies ist die einfachste Methode, um eine Sortierschaltfläche zu Ihren Daten hinzuzufügen, die immer sichtbar und verwendbar ist.

So fügen Sie Sortier- und Filteroptionen zu Ihren Daten hinzu:
- Wählen Sie die zu sortierenden Daten aus.
- Gehen Sie zur Registerkarte Daten.
- Klicken Sie auf den Befehl Filter.

Dadurch werden die Filter zu Ihren Daten hinzugefügt, und Sie können sie auf der rechten Seite jeder Spaltenüberschrift in Ihren Daten sehen.

Wenn Sie auf einen davon klicken, werden die verschiedenen Sortier- und Filteroptionen angezeigt. Diese ermöglichen Ihnen ein schnelles Sortieren jedes Feldes in aufsteigender oder absteigender Reihenfolge mit den Befehlen Sortieren von Klein nach Groß oder Sortieren von Groß nach Klein.
Sortierschaltfläche mit einer Tastenkombination hinzufügen
Sortier- und Filterumschalter können auch zu Ihrer Datenauswahl mit einer einfachen Tastenkombination hinzugefügt werden. Wählen Sie Ihren Datenbereich aus und drücken Sie die Tastenkombination Strg + Umschalt + L, um die Sortier- und Filterumschalter hinzuzufügen. Dies ist eine einfache Möglichkeit, Filter hinzuzufügen oder zu entfernen, da die Verknüpfung als Umschaltfunktion zum Aktivieren oder Deaktivieren dient.
Sortierschaltfläche mit VBA hinzufügen
VBA ist eine Programmiersprache, die in der Desktop-Version von Excel verfügbar ist und Ihnen das Erstellen benutzerdefinierter Lösungen ermöglicht. Sie können ein VBA-Makro erstellen, um Ihre Daten zu sortieren und es einer Schaltfläche im Blatt zuzuweisen.
Sie können Ihre Schaltfläche dann beliebig gestalten und benutzerdefinierten Text zur Schaltfläche hinzufügen. Dies ist eine großartige Option, wenn andere Benutzer die Arbeitsmappe verwenden werden, da es das Sortieren für den Benutzer sehr intuitiv macht. So erstellen Sie Ihre Sortierschaltfläche mit VBA.
Drücken Sie die Tastenkombination Alt + F11, um den Visual Basic-Editor zu öffnen.

Gehen Sie im Visual Basic-Editor zum Menü Einfügen und wählen Sie die Option Modul. Dadurch wird ein Code-Modul erstellt, in das Sie Ihren VBA-Code zum Sortieren Ihrer Daten hinzufügen können.
Sub ToggleSortOrder() Dim ascCell As Boolean ascCell = ActiveSheet.Range("ascCell").Value2 If ascCell = True Then ActiveSheet.Range("ascCell").Value2 = False With ActiveWorkbook.Worksheets("Data").ListObjects("Cars").Sort .SortFields.Clear .SortFields.Add2 Key:=Range("Cars[[#All],[Year]]"), Order:=xlAscending .Apply End With Else ActiveSheet.Range("ascCell").Value2 = True With ActiveWorkbook.Worksheets("Data").ListObjects("Cars").Sort .SortFields.Clear .SortFields.Add2 Key:=Range("Cars[[#All],[Year]]"), Order:=xlDescending .Apply End With End If End Sub
Fügen Sie den obigen VBA-Code zu Ihrem neuen Modul hinzu. Die Subroutine ToggleSortOrder() ermöglicht es, die Sortierreihenfolge in einer Excel-Tabelle namens Cars im Blatt namens Data zwischen aufsteigender und absteigender Reihenfolge der Spalte Year umzuschalten.
Zuerst wird eine Variable namens ascCell auf den Wert eines benannten Bereichs im Blatt namens ascCell gesetzt. Dies ist ein True oder False Wert und wird verwendet, um die aktuelle Sortierreihenfolge zu verfolgen und der Routine zu ermöglichen, zwischen aufsteigender und absteigender Reihenfolge umzuschalten.
![]()
Sie können den benannten Bereich in Ihrem Blatt erstellen, indem Sie eine Zelle auswählen und dann ascCell in das Namensfeld eingeben und die Taste Enter drücken.
Eine If... Then... Else-Anweisung sortiert dann die Daten basierend auf dem Wert von ascCell. Jeder Teil der If-Anweisung schreibt auch in den benannten Bereich ascCell, um die Sortierung zu verfolgen.

Jetzt können Sie eine Schaltfläche in Ihrem Blatt erstellen und diese so einstellen, dass sie Ihren VBA-Code ausführt, wenn sie geklickt wird.
Sortierschaltfläche mit Office Scripts hinzufügen
Office Scripts ist eine Programmiersprache, die für die Desktop- und Webversionen von Excel mit einem M365 Business Plan verfügbar ist. Office Scripts ist der richtige Weg, wenn Sie eine benutzerdefinierte Sortierschaltfläche benötigen, die sowohl in der Desktop- als auch in der Webversion von Excel funktioniert.

Gehen Sie zur Registerkarte Automatisieren und klicken Sie auf die Option Neues Skript, um den Code-Editor zu öffnen und ein neues Skript zu erstellen.

function main(workbook: ExcelScript.Workbook) { let cars = workbook.getTable("Cars"); let ascCell = workbook.getActiveWorksheet().getRange("ascCell").getValue(); let ascValue: boolean; if (ascCell === true) { ascValue = true; workbook.getActiveWorksheet().getRange("ascCell").setValue(false); } else { ascValue = false; workbook.getActiveWorksheet().getRange("ascCell").setValue(true); }; cars.getSort().apply([{ key: 2, ascending: ascValue }], false); }
Fügen Sie den obigen Code in den Code-Editor ein und klicken Sie auf die Schaltfläche Skript speichern.
Dieser Code kann verwendet werden, um eine Tabelle in einer Excel-Arbeitsmappe zu sortieren. Er beginnt mit der Deklaration von zwei Variablen: cars und ascCell. Die Variable cars speichert die Arbeitsmappentabelle, während die Variable ascCell einen Wert speichert, der angibt, ob der Sortiervorgang in aufsteigender (true) oder absteigender (false) Reihenfolge ausgeführt werden soll.
Der Wert der benannten Zellenzelle ascCell wird überprüft, um festzustellen, welche Sortierreihenfolge verwendet werden soll. Diese Zelle wird verwendet, um die zuvor angewendete Sortieroption zu verfolgen.
Der Code aktualisiert den Bereich ascCell bei jeder Ausführung. Dadurch kann der Code als Umschalter zwischen aufsteigender und absteigender Sortierung dienen.
Wenn ascCell auf true gesetzt ist, werden die Daten in aufsteigender Reihenfolge sortiert, andernfalls in absteigender Reihenfolge.
Der Wert ascCell wird verwendet, um die Variable ascValue einzustellen, die die Sortierung bestimmt.
Schließlich wird die Methode .getSort() mit zwei Parametern aufgerufen. Dies stellt sicher, dass der gewünschte Sortiervorgang an der Tabelle ausgeführt wird.
key: 2steht für die Spalte, die sortiert werden soll. Dies verwendet einen nullbasierten Index, sodass die 2 die dritte Spalte sortiert.ascending: ascValueist ein boolescher Wert, um festzulegen, ob Sie eine aufsteigende (true) oder absteigende (false) Sortierung wünschen.

Dieser Code kann über die Schaltfläche Ausführen im Code-Editor ausgeführt werden, Sie können aber auch eine Schaltfläche im Blatt erstellen, die den Code ausführt. Klicken Sie auf das Dreipunktmenü im oberen rechten Bereich des Code-Editors und wählen Sie die Option Schaltfläche hinzufügen aus dem Menü. Dies erstellt eine Schaltfläche, die über dem Raster schwebt und das Office-Skript bei jedem Drücken ausführt.

Sortierschaltfläche mit einem Slicer hinzufügen
Excel verfügt über eine sehr nützliche Slicer-Option zum Filtern von Tabellendaten. Dies ist ein interaktives Filterobjekt, das über dem Raster schwebt und es einem Benutzer ermöglicht, ein bestimmtes Feld in den Daten durch Klicken auf Slicer-Elemente zu filtern.
Leider gibt es kein gleichwertiges Objekt zum Sortieren von Daten. Sie können jedoch ein Datensortierungstool mithilfe von Slicer und der dynamischen Array-Funktion SORTBY erstellen.
Auf diese Weise können Sie Slicer mit aufsteigenden und absteigenden Optionen einrichten, die ausgewählt werden können, um die gewünschte Sortierung zu erhalten. So können Sie es einrichten.

Sie müssen zunächst eine zweite Tabelle einrichten, die später mit dem Slicer verknüpft wird. Diese Tabelle enthält 2 Spalten, eine für die im Slicer anzuzeigenden Bezeichnungen und die andere für die erforderlichen Argumente für die SORTBY-Funktion. In der obigen Tabelle enthält die Spalte Typ die Bezeichnungen und die Spalte Wert die entsprechenden SORTBY-Argumente.
Die Tabelle hat zwei Zeilen, da die Funktion SORTBY zwei mögliche Eingaben hat. Sie kann in aufsteigender Reihenfolge (1) oder absteigender Reihenfolge (-1) sortieren.

Jetzt können Sie den Slicer für diese sekundäre Tabelle erstellen. Wählen Sie die Tabelle aus, gehen Sie zur Registerkarte Tabellenentwurf und klicken Sie auf den Befehl Slicer einfügen.

Das Menü Slicer einfügen wird geöffnet, in dem Sie das Feld auswählen können, auf dem der Slicer basieren soll. Wählen Sie die Spalte Typ aus, die die Beschriftungen Aufsteigend und Absteigend enthält, und klicken Sie auf die Schaltfläche OK, um den Slicer zu erstellen.
Dadurch wird ein Slicer erstellt, in dem Sie Aufsteigend oder Absteigend auswählen können. Dies filtert die Tabelle, um nur die ausgewählte Option anzuzeigen. Jetzt benötigen Sie eine Möglichkeit, den sichtbaren Wert aus Ihrer gefilterten Tabelle zu erhalten. Dies kann mit der Funktion TEILERGEBNIS erreicht werden. Sie ermöglicht es Ihnen, eine Spalte basierend auf den sichtbaren Zeilen zu aggregieren.

= TEILERGEBNIS ( 104, Sort[Value] )
Die obige TEILERGEBNIS-Formel ermittelt den Maximalwert basierend auf den sichtbaren Zeilen in der Spalte Wert. Sie gibt 1 zurück, wenn die Tabelle nicht gefiltert oder nach Aufsteigend gefiltert ist, und -1, wenn die Tabelle nach Absteigend gefiltert ist.

= SORTBY ( Cars, Cars[Year], TEILERGEBNIS ( 104, Sort[Value] ) )
Dieses TEILERGEBNIS-Ergebnis kann in der Funktion SORTBY verwendet werden, um die Sortierung mithilfe von Slicern zu ändern! Die obige Formel gibt die Tabelle Cars zurück, sortiert nach der Spalte Jahr basierend auf den TEILERGEBNIS-Ergebnissen.

Jetzt können Sie Ihre Daten mit einem Slicer sortieren!
Fazit
Das Sortieren von Daten ist ein grundlegender Bestandteil jeder Datenanalyse, und eine Schaltfläche dafür wird den Prozess erheblich erleichtern. Filterumschalter bieten eine integrierte Schaltfläche für jede Spaltenüberschrift in den Daten, und diese können schnell mit einer Verknüpfung hinzugefügt werden. Aber die Sortieroptionen, die sie bieten, sind nicht offensichtlich.
Eine weitere Möglichkeit, eine Sortierschaltfläche für Ihre Daten einzufügen, ist mit VBA oder Office Scripts. Beide ermöglichen es Ihnen, Code zum Sortieren Ihrer Daten zu erstellen, und diese können einer Schaltfläche hinzugefügt werden, die in Ihrem Blatt platziert ist.
Autor John MacDougall
Pubblicato in Excel
Hinterlasse jetzt einen Kommentar