Zum Hauptinhalt springen

Wie berechnet man den Median bei mehreren Bedingungen in Excel?

Author: Sun Last Modified: 2025-08-06

Die Berechnung des Medians eines Datensatzes in Excel ist eine häufig benötigte Operation in der Datenanalyse und Berichterstellung. Während das Finden des Medians für einen einfachen Bereich schnell mit Standard-Excel-Funktionen erledigt werden kann, gibt es oft Situationen, in denen Sie nur den Medianwert aus Daten benötigen, die mehrere spezifische Kriterien erfüllen – zum Beispiel, den Median der Verkaufsbeträge für ein bestimmtes Produkt an einem bestimmten Datum innerhalb eines großen Datensatzes zu finden. Solche komplexen, bedingten Operationen allein mit traditionellen Funktionen zu handhaben, kann schwierig sein. In diesem Tutorial stellen wir verschiedene praktische Lösungen zur Berechnung des Medians unter mehreren Bedingungen in Excel vor, sowohl formelbasierte Ansätze als auch Automatisierung mithilfe von VBA für fortgeschrittene Anforderungen.


Median berechnen, wenn mehrere Bedingungen erfüllt sind

Angenommen, Sie haben einen Datenbereich wie unten gezeigt, und Ihre Aufgabe ist es, den Medianwert zu bestimmen, der zwei Kriterien erfüllt: Zum Beispiel den Medianwert von Spalte B, wo Spalte A den Wert "a" und Spalte C das Datum "2-Jan" enthält. Dieses Szenario ist besonders häufig in Verkaufsberichten, Klassen-Testergebnissen und anderen Geschäftlichen oder Akademischen Datenanalysen, bei denen eine Filterung nach mehreren Kategorien notwendig ist.

a screenshot of the original data

Für mehr Klarheit bereiten wir das Arbeitsblatt wie folgt vor: Geben Sie in Ihrem Excel-Blatt Ihre Bedingungen ein und erstellen Sie ein Layout, das dem untenstehenden Bild ähnelt. Hier listet Spalte E die Kriterien für Spalte A auf, und Zeile 1 von Spalten F und weiter repräsentieren die Datumsbedingungen aus Spalte C.

a screenshot of typing new required data

Um den Median unter mehreren Kriterien zu berechnen, können Sie eine Array-Formel verwenden, die die MEDIAN- und WENN-Funktionen nutzt, um eine gefilterte Liste von Werten basierend auf Ihren Bedingungen zu erstellen. So gehen Sie vor:

1. Klicken Sie auf Zelle F2, wo Sie das Median-Ergebnis anzeigen möchten, und geben Sie die folgende Formel ein:

=MEDIAN(IF($A$2:$A$12=$E2,IF($C$2:$C$12=F$1,$B$2:$B$12)))

Diese Formel funktioniert, indem sie für jede Zeile überprüft, ob der Wert in Spalte A mit der Bedingung in E2 übereinstimmt und ob der Wert in Spalte C mit der Überschrift in F1 übereinstimmt. Wenn beide Bedingungen erfüllt sind, sammelt sie den Wert in Spalte B für die Median-Berechnung.

2. Nachdem Sie die Formel eingegeben haben, drücken Sie Strg + Umschalt + Eingabe (nicht nur Eingabe), da dies eine Array-Formel ist. Excel wird die Formel automatisch mit geschweiften Klammern { } umgeben, um eine Array-Formel anzuzeigen.

3. Ziehen Sie den Ausfüllkästchen am unteren rechten Eck von F2, um die Formel in andere relevante Zellen zu kopieren, wo Sie Mediane unter verschiedenen Bedingungen benötigen, wie unten gezeigt:

a screenshot of using the formula

Parametererklärungen und Nutzungstipps: In der Formel ist $A$2:$A$12 der Bereich, der die erste Bedingung enthält (wie Produktnamen), $C$2:$C$12 ist der Bereich für die zweite Bedingung (wie Daten), und $B$2:$B$12 ist der Bereich, der die numerischen Werte enthält, für die Sie den Median möchten. Passen Sie diese Bereiche bei Bedarf für Ihr eigenes Arbeitsblatt an. Verwenden Sie immer absolute Referenzen ($ Symbole), um sicherzustellen, dass sich die Bereiche beim Kopieren der Formel nicht verschieben.

Vorsichtsmaßnahmen: Wenn keine Werte beide Bedingungen erfüllen, gibt die Formel einen #ZAHL! Fehler zurück. Um Verwirrung zu vermeiden, können Sie die Formel in WENNFEHLER einbetten, um eine Leerstelle oder eine benutzerdefinierte Nachricht zurückzugeben:

=IFERROR(MEDIAN(IF($A$2:$A$12=$E2,IF($C$2:$C$12=F$1,$B$2:$B$12))),"No match")

Stellen Sie sicher, dass Ihre Daten keine leeren Zellen oder nicht-numerische Werte in der Median-Spalte enthalten, da dies die Ergebnisse ebenfalls beeinflussen kann.

Dieser formelbasierte Ansatz ist geeignet, wenn Sie relativ einfache Bedingungen haben (typischerweise bis zu zwei oder drei Kriterien). Er lässt sich schnell einrichten und erfordert keine Programmierkenntnisse. Für komplexe Filterungen mit dynamischen Bedingungen oder größeren Datensätzen kann die Wartung oder Bearbeitung von Array-Formeln jedoch mühsam werden.


VBA-Code - Median mit mehreren Bedingungen berechnen

Für Szenarien, in denen Sie die bedingte Medianberechnung automatisieren müssen – beispielsweise wenn es viele Bedingungen, große Datensätze oder sich häufig ändernde Kriterien gibt – kann eine VBA-Lösung eine praktische Alternative bieten. Mit VBA können Sie ein wiederverwendbares Makro erstellen, das den Median basierend auf einer beliebigen Anzahl von Bedingungen berechnet. VBA-basierte Lösungen sind besonders nützlich, wenn Sie wiederholte Analysen optimieren oder benutzerdefinierte Excel-Prozesse für Berichte und Dashboards entwickeln möchten.

Folgen Sie diesen Schritten, um VBA für die bedingte Medianberechnung zu verwenden:

1. Klicken Sie auf Entwicklertools > Visual Basic. Ein neues Microsoft Visual Basic for Applications-Fenster wird geöffnet. Klicken Sie auf Einfügen > Modul, dann fügen Sie den folgenden Code in das Modul ein:

Sub ConditionalMedian()
    Dim DataRange As Range
    Dim CriteriaRange1 As Range
    Dim CriteriaRange2 As Range
    Dim OutputRange As Range
    Dim Criteria1 As Variant
    Dim Criteria2 As Variant
    Dim TempArr() As Double
    Dim i As Long
    Dim j As Long
    Dim count As Long
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set DataRange = Application.InputBox("Select the range containing median values (e.g., B2:B12):", xTitleId, "", Type:=8)
    Set CriteriaRange1 = Application.InputBox("Select the first criteria range (e.g., A2:A12):", xTitleId, "", Type:=8)
    Criteria1 = Application.InputBox("Enter the first criteria value (e.g., a):", xTitleId, "", Type:=2)
    Set CriteriaRange2 = Application.InputBox("Select the second criteria range (e.g., C2:C12):", xTitleId, "", Type:=8)
    Criteria2 = Application.InputBox("Enter the second criteria value (e.g.,2-Jan):", xTitleId, "", Type:=2)
    Set OutputRange = Application.InputBox("Select the cell to output the result:", xTitleId, "", Type:=8)
    
    count = 0
    For i = 1 To DataRange.Rows.count
        If StrComp(CStr(CriteriaRange1.Cells(i, 1).Value), CStr(Criteria1), vbTextCompare) = 0 And _
           CStr(CriteriaRange2.Cells(i, 1).Value) = CStr(Criteria2) Then
            ReDim Preserve TempArr(count)
            TempArr(count) = DataRange.Cells(i, 1).Value
            count = count + 1
        End If
    Next i
    
    If count = 0 Then
        OutputRange.Value = "No match"
    Else
        Call QuickSort(TempArr, LBound(TempArr), UBound(TempArr))
        If count Mod 2 = 1 Then
            OutputRange.Value = TempArr(count \ 2)
        Else
            OutputRange.Value = (TempArr(count \ 2) + TempArr(count \ 2 - 1)) / 2
        End If
    End If
End Sub

Sub QuickSort(arr() As Double, first As Long, last As Long)
    Dim i As Long
    Dim j As Long
    Dim pivot As Double
    Dim temp As Double
    
    i = first
    j = last
    pivot = arr((first + last) \ 2)
    
    Do While i <= j
        Do While arr(i) < pivot
            i = i + 1
        Loop
        
        Do While arr(j) > pivot
            j = j - 1
        Loop
        
        If i <= j Then
            temp = arr(i)
            arr(i) = arr(j)
            arr(j) = temp
            i = i + 1
            j = j - 1
        End If
    Loop
    
    If first < j Then
        QuickSort arr, first, j
    End If
    
    If i < last Then
        QuickSort arr, i, last
    End If
End Sub

2. Klicken Sie auf die Run button Schaltfläche (oder drücken Sie F5), um den Code auszuführen. Sie werden aufgefordert, jeden der benötigten Bereiche auszuwählen und Ihre Kriterien einzugeben. Nachdem Sie die Eingabeaufforderungen abgeschlossen haben, wird das Ergebnis (der Median, der alle Kriterien erfüllt) in der von Ihnen angegebenen Zelle ausgegeben.

Dieses Makro ermöglicht es Ihnen flexibel den Wertebereich, Kriterienbereiche, Kriterienwerte und wo das Ergebnis ausgegeben werden soll jedes Mal auszuwählen, wenn es ausgeführt wird. Sie können den Code auch leicht anpassen, um bei Bedarf mehr Kriterien hinzuzufügen.

Tipps und Fehlerbehebung: Bei der Verwendung von VBA-Lösungen stellen Sie sicher, dass alle ausgewählten Bereiche gleich lang sind und die Kriterien mit dem richtigen Datentyp und Format übereinstimmen (z.B. Text vs. Datum). Wenn kein Wert den Kriterien entspricht, wird die Ausgabe "Keine Übereinstimmung" anzeigen. Für maximale Stabilität speichern Sie Ihr Arbeitsblatt vor dem Ausführen des Makros und aktivieren Sie Makros immer, wenn Sie dazu aufgefordert werden. Diese VBA-Lösung ist für Benutzer geeignet, die mit Makro-Sicherheitseinstellungen vertraut sind und für den Einsatz in automatisierten Excel-Workflows.

Zusammenfassend lässt sich sagen, dass der VBA-Ansatz komplexe Medianberechnungen automatisiert, die mit Formeln allein umständlich oder schwierig durchzuführen sind. Er ist besonders gut geeignet, wenn Sie mit variablen Bedingungen, häufigen Neuberechnungen und großen Datensätzen arbeiten.


Verwandte Artikel:


Die besten Office-Produktivitätstools

🤖 Kutools AI Aide: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung |  Code generieren  |  Benutzerdefinierte Formeln erstellen |  Daten analysieren und Diagramme generieren  |  Erweiterte Funktionen aufrufen
Beliebte Funktionen: Doppelte suchen, hervorheben oder markieren | Leere Zeilen löschen | Spalten oder Zellen ohne Datenverlust zusammenführen | Runden
Erweiterte SVERWEIS: SVERWEIS mit mehreren Kriterien | SVERWEIS für mehrere Werte | Mehrblatt-SVERWEIS | Fuzzy Match
Erweiterte Dropdown-Liste: Dropdown-Liste schnell erstellen | Abhängige Dropdown-Liste | Mehrfachauswahl-Dropdown-Liste
Spalten-Manager: Eine bestimmte Anzahl an Spalten hinzufügen | Spalten verschieben | Sichtbarkeit von ausgeblendeten Spalten umschalten | Bereiche & Spalten vergleichen
Hervorgehobene Funktionen: Gitterfokus | Entwurfsansicht | Erweiterte Formelleiste | Arbeitsmappen- & Blattmanager | AutoText-Bibliothek | Datumsauswahl | Daten zusammenführen | Zellen verschlüsseln/entschlüsseln | E-Mail senden nach Liste | Super Filter | Spezialfilter (Filtern nach Fett/Kursiv/Durchgestrichen...)…
Top15 Toolsets:12 Text-Tools (Text hinzufügen, Bestimmte Zeichen löschen, ...) | 50+ Diagramm typen (Gantt-Diagramm, ...) | 40+ praktische Formeln (Alter basierend auf dem Geburtsdatum berechnen, ...) | 19 Einfüge-Tools (QR-Code einfügen, Bild aus Pfad einfügen, ...) | 12 Konvertierungs-Tools (In Wörter umwandeln, Währungsumrechnung, ...) | 7 Konsolidieren & Aufteilen-Tools (Erweiterte Zeilen zusammenführen, Zellen aufteilen, ...) | ... und mehr
Nutzen Sie Kutools in Ihrer bevorzugten Sprache – unterstützt Englisch, Spanisch, Deutsch, Französisch, Chinesisch und über40 weitere Sprachen!

Steigern Sie Ihre Excel-Kompetenz mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen, um Ihre Produktivität zu steigern und Zeit zu sparen.Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...


Office Tab bringt die Reiter-Oberfläche in Office und macht Ihre Arbeit so viel einfacher

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