Excel-Formel: Zählen Sie, ob die Zeile mehrere interne Kriterien erfüllt

Inhaltsverzeichnis

Generische Formel

=SUMPRODUCT((logical1)*(logical2))

Zusammenfassung

Verwenden Sie die Funktion SUMPRODUCT, um Zeilen in einer Tabelle zu zählen, die mehrere Kriterien erfüllen, von denen einige von logischen Tests abhängen, die auf Zeilenebene ausgeführt werden.

Kontext

Sie haben eine Tabelle, die die Ergebnisse von Sportspielen enthält. Sie haben vier Spalten: Heimmannschaft, Gastmannschaft, Heimmannschaftswertung, Gastmannschaftswertung. Für eine bestimmte Mannschaft möchten Sie nur Spiele (Reihen) zählen, bei denen die Mannschaft zu Hause gewonnen hat. Es ist einfach, Spiele (Reihen) zu zählen, in denen eine Mannschaft die Heimmannschaft war, aber wie zählt man nur Siege?

Dies ist eine gute Verwendung der SUMPRODUCT-Funktion, die Array-Operationen (Think-Operationen, die sich mit Bereichen befassen) nativ verarbeiten kann.

In dem gezeigten Beispiel lautet die Formel in Zelle H5:

=SUMPRODUCT((B5:B10=G5)*(D5:D10>E5:E10))

Erläuterung

Die SUMPRODUCT-Funktion ist so programmiert, dass Arrays nativ verarbeitet werden, ohne dass Control Shift Enter erforderlich ist. Das Standardverhalten besteht darin, entsprechende Elemente in einem oder mehreren Arrays zu multiplizieren und dann die Produkte zu summieren. Wenn ein einzelnes Array angegeben wird, wird die Summe der Elemente im Array zurückgegeben.

In diesem Beispiel verwenden wir zwei logische Ausdrücke in einem einzelnen Array-Argument. Wir könnten jeden Ausdruck in ein separates Argument einfügen, aber dann müssten wir logische TRUE FALSE-Werte mit einem anderen Operator zu Einsen und Nullen zwingen.

Durch Verwendung des Multiplikationsoperators zum Multiplizieren der beiden Arrays erzwingt Excel automatisch logische Werte zu Einsen und Nullen.

Nachdem die beiden logischen Ausdrücke ausgewertet wurden, sieht die Formel folgendermaßen aus:

=SUMPRODUCT(((FALSE;TRUE;FALSE;TRUE;FALSE;TRUE))*((TRUE;TRUE;TRUE;FALSE;TRUE;TRUE)))

Nachdem die beiden Arrays multipliziert wurden, sieht die Formel folgendermaßen aus:

=SUMPRODUCT((0;1;0;0;0;1))

Da nur noch ein Array übrig ist, addiert SUMPRODUCT einfach die Elemente im Array und gibt die Summe zurück.

Interessante Beiträge...