Zum Hauptinhalt springen

Wie kann man Werte nach Gruppen in Excel ranken?

Author: Sun Last Modified: 2025-07-21

Das Arbeiten mit gruppierten Daten in Excel erfordert oft den Vergleich von Werten innerhalb jeder Gruppe, wie zum Beispiel das Rangordnen von Umsatzzahlen nach Region, Testergebnissen nach Klasse oder Transaktionsbeträgen nach Kategorie. Während Excel robuste Werkzeuge zum Rangordnen von Daten bietet, erfordert das Rangordnen innerhalb von Gruppen (auch bekannt als "gruppenweises Ranking" oder "bedingtes Ranking") einen spezifischen Ansatz. Dies ist besonders nützlich, wenn Sie die Leistung bewerten oder die besten und schlechtesten Datensätze unter verschiedenen Kategorien identifizieren möchten, ohne die Ergebnisse zwischen den Gruppen zu vermischen. Die folgenden Methoden untersuchen praktische Lösungen für das Ranking von Werten nach Gruppen, wodurch es einfacher wird, Ihre Daten präzise zu interpretieren und in alltäglichen Aufgaben zu analysieren.
A screenshot showing a grouped data set with ranked values in Excel

Werte nach Gruppen ranken
VBA-Code - Verwenden Sie ein Makro, um das Ranking von Werten innerhalb jeder Gruppe zu automatisieren


arrow blue right bubble Werte nach Gruppen ranken

Für Situationen, in denen Sie Werte innerhalb unterschiedlicher Gruppen ranken müssen, wie zum Beispiel das Bewerten von Schülern nach Klasse oder das Auflisten von Verkäufen nach verschiedenen Regionen, hat Excel keine direkte "Ranking nach Gruppe"-Funktion. Ein gut gestaltetes Formelkonzept kann jedoch effizient eine gruppenweise Rangfolge erreichen, ohne zusätzliche Datenmanipulation.

Dazu können Sie eine Array-Formel verwenden, die logische Tests mit Aggregationsfunktionen kombiniert. Mit diesem Ansatz können Sie jeden Wert nur innerhalb seiner zugewiesenen Gruppe vergleichen und so den erforderlichen Rang für jeden Datenpunkt erzeugen.

Führen Sie die folgenden Schritte aus:

  • Organisieren Sie Ihre gruppierten Daten in Spalten, wie Gruppe (A2:A11) und Wert (B2:B11).
  • Wählen Sie eine leere Zelle neben Ihren Daten aus – normalerweise in der ersten Zeile neben Ihren Werten, zum Beispiel Zelle C2.
  • Geben Sie die folgende Formel ein:
=SUMPRODUCT(($A$2:$A$11=A2)*(B2<$B$2:$B$11))+1

Diese Formel funktioniert, indem sie zählt, wie viele Werte innerhalb derselben Gruppe kleiner als der aktuelle Wert sind. Hier ist die Bedeutung jedes Parameters:

  • ($A$2:$A$11=A2)
    → Dies überprüft, ob jede Zelle im Bereich A2:A11 gleich dem Wert in A2 ist.
    → Es gibt ein Array von WAHR/FALSCH (oder 1/0) Werten zurück, die darstellen, ob jede Zeile zur selben Gruppe wie A2 gehört.
  • (B2<$B$2:$B$11)
    → Dies überprüft, wie viele Werte in B2:B11 größer als B2 sind.
    → Es gibt WAHR (1) zurück, wenn B2 kleiner als ein gegebener Wert ist, andernfalls FALSCH (0).
  • * (Multiplikation)
    → Dies kombiniert die zwei Bedingungen:
  • Gruppenübereinstimmung (A2)
    Der Wert in B2 ist kleiner als andere
    → Nur Zeilen, die sich in derselben Gruppe befinden und einen kleineren Wert haben, werden gezählt.
  • SUMMENPRODUKT(...)
    → Summiert die Anzahl der Zeilen, die beide Bedingungen erfüllen.
  • +1
    → Ränge beginnen bei 1 (anstatt 0), daher addieren wir 1 zur Anzahl der kleineren Werte.

Sobald die Formel in C2 eingegeben wurde, ziehen Sie den Autofill-Handle nach unten, um diese Formel für alle relevanten Zeilen in Ihrem Datensatz auszufüllen. Die Formel passt sich automatisch an, um die Gruppe und den Wert jeder Zeile zu verwenden und gibt den Rang innerhalb dieser Gruppe zurück. A screenshot showing the Excel formula applied to rank values by group in a worksheet

Tipps und Vorsichtsmaßnahmen:

  • Wenn Ihr Bereich groß ist, denken Sie daran, die Zellreferenzen entsprechend zu aktualisieren.
  • Für Ränge in absteigender Reihenfolge (z.B. der höchste Wert ist 1), ändern Sie den Formelvergleich von B2<$B$2:$B$11 in B2>$B$2:$B$11.
  • Um doppelte Werte zu behandeln, weist diese Formel denselben Rang gleichen Werten innerhalb derselben Gruppe zu. Wenn Sie sequenzielle eindeutige Ränge benötigen, sollten Sie zusätzliche Hilfsspalten in Betracht ziehen.

Diese formelbasierte Methode ist flexibel und lässt sich leicht auf die meisten gruppierten Tabellenstrukturen in Excel anwenden. Bei sehr großen Datensätzen kann die Berechnungsleistung jedoch aufgrund der Abhängigkeit von Array-Logik langsamer werden.


VBA-Code - Verwenden Sie ein Makro, um das Ranking von Werten innerhalb jeder Gruppe zu automatisieren

Für Benutzer, die den Ranking-Prozess automatisieren oder größere Datensätze effizienter verarbeiten möchten, kann das Schreiben eines VBA-Makros eine wertvolle Herangehensweise sein. Makros können repetitive Schritte automatisieren, bieten mehr Anpassungsmöglichkeiten und verarbeiten Daten schneller als komplexe Formeln. Dies ist ideal für Szenarien wie die Erstellung geplanter Berichte, wiederholte Ranking-Aufgaben oder wenn Sie Formel-Unordnung in Ihrer Arbeitsmappe vermeiden möchten.

Bevor Sie fortfahren, stellen Sie sicher, dass Sie Ihre Arbeit speichern und Makros in Ihren Excel-Einstellungen aktivieren. So können Sie dieses Skript schreiben und ausführen:

  1. Drücken Sie Alt + F11, um den VBA-Editor zu aktivieren. Klicken Sie im erscheinenden Microsoft Visual Basic for Applications-Fenster auf Einfügen > Modul und fügen Sie den folgenden Code in das geöffnete Modul ein:
Sub RankValuesByGroup()
    Dim DataRange As Range
    Dim GroupRng As Range
    Dim ValueRng As Range
    Dim OutCol As Range
    Dim dictGroups As Object
    Dim arrValues, arrRanks
    Dim i As Long, j As Long
    Dim GroupKey As String
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set DataRange = Application.InputBox("Select the data table range (including group and value columns)", xTitleId, Selection.Address, Type:=8)
    If DataRange Is Nothing Then Exit Sub
    
    Set GroupRng = Application.InputBox("Select the group column within your range", xTitleId, DataRange.Columns(1).Address, Type:=8)
    Set ValueRng = Application.InputBox("Select the value column to rank within your range", xTitleId, DataRange.Columns(2).Address, Type:=8)
    
    Set OutCol = DataRange.Offset(0, DataRange.Columns.Count).Resize(DataRange.Rows.Count, 1)
    OutCol.Cells(1).Value = "RankByGroup"
    
    Set dictGroups = CreateObject("Scripting.Dictionary")
    arrValues = ValueRng.Value
    arrRanks = ValueRng.Value
    
    ' Build group dictionaries for ranking
    For i = 2 To UBound(arrValues, 1)
        GroupKey = GroupRng.Cells(i, 1).Value
        If Not dictGroups.Exists(GroupKey) Then
            dictGroups.Add GroupKey, CreateObject("System.Collections.ArrayList")
        End If
        dictGroups(GroupKey).Add arrValues(i, 1)
    Next i
    
    ' Rank within each group
    For i = 2 To UBound(arrValues, 1)
        GroupKey = GroupRng.Cells(i, 1).Value
        Dim countLower As Long
        countLower = 0
        For j = 0 To dictGroups(GroupKey).Count - 1
            If dictGroups(GroupKey)(j) < arrValues(i, 1) Then
                countLower = countLower + 1
            End If
        Next j
        arrRanks(i, 1) = countLower + 1
    Next i
    
    ' Output results
    For i = 2 To UBound(arrRanks, 1)
        OutCol.Cells(i, 1).Value = arrRanks(i, 1)
    Next i
    
    MsgBox "Ranking by group completed.", vbInformation, xTitleId
End Sub
  1. Klicken Sie auf Ausführen. Ein Dialogfeld fordert Sie auf, Ihren vollständigen Datenbereich, die Gruppenspalte und die Wertsäule auszuwählen. Das Makro generiert dann eine neue Spalte mit den Rängen für jeden Wert innerhalb seiner Gruppe.

Hinweise und Problembehandlung:

  • Stellen Sie sicher, dass die Spalenauswahl mit Ihren Daten übereinstimmt: Die Gruppen- und Wertsäulen müssen korrekt ausgerichtet sein.
  • Wenn die Datenüberschrift enthalten ist, passen Sie den Anfangs-Schleifenindex im Code für die korrekte Rangfolge an (je nach Ihrer Datenstruktur).
  • Um in absteigender Reihenfolge zu ranken, ändern Sie den Vergleich If dictGroups(GroupKey)(j) < arrValues(i,1) entsprechend.
  • Wenn Sie auf Berechtigungs- oder Makro-Sicherheitswarnungen stoßen, überprüfen Sie die Makro-Sicherheitseinstellungen von Excel unter Datei > Optionen > Vertrauenszentrum.

Diese VBA-Methode bietet Flexibilität und robuste Leistung für fortgeschrittenere oder hochskalierte Anwendungen, insbesondere wenn sie in automatisierte Berichtsworkflows integriert wird.


a screenshot of kutools for excel ai

Entfesseln Sie die Magie von Excel mit Kutools AI

  • Intelligente Ausführung: Führen Sie Zellenoperationen durch, analysieren Sie Daten und erstellen Sie Diagramme – alles angetrieben durch einfache Befehle.
  • Benutzerdefinierte Formeln: Erstellen Sie maßgeschneiderte Formeln, um Ihre Arbeitsabläufe zu optimieren.
  • VBA-Codierung: Schreiben und implementieren Sie VBA-Code mühelos.
  • Formelinterpretation: Verstehen Sie komplexe Formeln mit Leichtigkeit.
  • Textübersetzung: Überwinden Sie Sprachbarrieren in Ihren Tabellen.
Erweitern Sie Ihre Excel-Fähigkeiten mit KI-gestützten Tools. Laden Sie jetzt herunter und erleben Sie eine Effizienz wie nie zuvor!

Beste Büroproduktivitätswerkzeuge

🤖 Kutools AI-Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung   |  Code generieren  |  Benutzerdefinierte Formeln erstellen  |  Daten analysieren und Diagramme generieren  |  Erweiterte Funktionen aufrufen
Beliebte Funktionen: Finden, Hervorheben oder Doppelte markieren   |  Leere Zeilen löschen   |  Spalten oder Zellen kombinieren ohne Datenverlust   |   Runden ...
Erweiterte SVERWEIS: Mehrfachkriterien SVERWEIS    Mehrfachwert SVERWEIS  |   Mehrblatt-SVERWEIS   |   Fuzzy Match ....
Erweiterte Dropdown-Liste: Schnell Dropdown-Liste erstellen   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Eine bestimmte Anzahl von Spalten hinzufügen  |  Spalten verschieben  |  Sichtbarkeitsstatus ausgeblendeter Spalten umschalten  |  Bereiche & Spalten vergleichen ...
Hervorgehobene Funktionen: Gitterfokus   |  Entwurfsansicht   |   Erweiterte Formelleiste    Arbeitsmappe & Arbeitsblatt-Manager   |  AutoText-Bibliothek (Auto Text)   |  Datumsauswahl   |  Daten zusammenführen   |  Zellen verschlüsseln/entschlüsseln    E-Mail senden nach Liste   |  Spezialfilter   |   Spezialfilter (Filtern fett/kursiv/durchgestrichen...) ...
Top15 Werkzeugsets12 Textwerkzeuge (Text hinzufügen, Bestimmte Zeichen löschen, ...)   |   50+ Diagramm typen (Gantt-Diagramm, ...)   |   40+ Praktische Formeln (Alter basierend auf dem Geburtsdatum berechnen, ...)   |   19 Einfügewerkzeuge (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Konvertierungswerkzeuge (In Wörter umwandeln, Währungsumrechnung, ...)   |   7 Konsolidieren & Aufteilen Werkzeuge (Erweiterte Zeilen zusammenführen, Zellen aufteilen, ...)   |   ... und mehr

Verbessern Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen zur Steigerung der Produktivität und Zeitersparnis.  Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...


Office Tab bringt eine Registerkartenoberfläche zu Office und macht Ihre Arbeit viel einfacher

  • Aktivieren Sie die Bearbeitung und das Lesen mit Registerkarten in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters, anstatt in neuen Fenstern.
  • Steigert Ihre Produktivität um50 % und reduziert täglich hunderte von Mausklicks für Sie!