Zum Hauptinhalt springen

Kutools für Office — Eine Suite. Fünf Tools. Erledigen Sie mehr.

Wie berechnet man den Median bei mehreren Bedingungen in Excel?

Author Sun Last modified

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 Produktivitätstools für das Büro

🤖 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: Doppelte suchen, hervorheben oder markieren | Leere Zeilen löschen | Spalten oder Zellen zusammenführen, ohne Daten zu verlieren | 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...
Spaltenmanager: Eine bestimmte Anzahl an Spalten hinzufügen | Spalten verschieben | Sichtbarkeitsstatus versteckter Spalten umschalten | Bereiche & Spalten vergleichen...
Empfohlene Funktionen: Gitterfokus | Entwurfsansicht | Erweiterte Formelleiste | Arbeitsmappe & Arbeitsblatt-Manager | AutoText-Bibliothek | Datumsauswahl | Daten zusammenführen | Zellen verschlüsseln/entschlüsseln | E-Mail senden nach Liste | Super Filter | Spezialfilter (fett/kursiv/durchgestrichen filtern...) ...
Top15 Toolsets:12 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 Konsolidierungs- & Aufteilungstools (Erweiterte Zeilen zusammenführen, Zellen aufteilen, ...) | ... und mehr
Verwenden Sie Kutools in Ihrer bevorzugten Sprache – unterstützt Englisch, Spanisch, Deutsch, Französisch, Chinesisch und über40 weitere!

Stärken Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und genießen Sie Effizienz wie nie zuvor. Kutools für Excel bietet mehr als300 erweiterte Funktionen, um die 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 Tab-Oberfläche in Office und macht Ihre Arbeit wesentlich einfacher

  • Aktivieren Sie die Tabulator-Bearbeitung und das Lesen in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Tabs innerhalb desselben Fensters, statt in neuen Einzelfenstern.
  • Steigert Ihre Produktivität um50 % und reduziert hunderte Mausklicks täglich!

Alle Kutools-Add-Ins. Ein Installationspaket

Das Kutools for Office-Paket bündelt Add-Ins für Excel, Word, Outlook & PowerPoint sowie Office Tab Pro und ist ideal für Teams, die mit mehreren Office-Anwendungen arbeiten.

Excel Word Outlook Tabs PowerPoint
  • All-in-One-Paket — Add-Ins für Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Ein Installationspaket, eine Lizenz — in wenigen Minuten einsatzbereit (MSI-kompatibel)
  • Besser gemeinsam — optimierte Produktivität in allen Office-Anwendungen
  • 30 Tage kostenlos testen — keine Registrierung, keine Kreditkarte erforderlich
  • Bestes Preis-Leistungs-Verhältnis — günstiger als Einzelkauf der Add-Ins