Summieren mehrerer Zeilen in Excel

Summieren mehrerer Zeilen in Excel

Angenommen, ich habe die folgende Tabelle:

(Bilder können noch nicht eingebettet werden)

Ich möchte die Gesamtzahl der am ersten Tag verkauften Äpfel ermitteln, unabhängig vom Kunden.

Ich bin einigermaßen damit vertraut, INDEX/MATCHaber ich bin nicht ganz sicher, wie ich vorgehen soll.

Ich verstehe, dass mit der SUMIFFunktion nur die Summe des gewünschten Tages gebildet werden kann, bin mir aber nicht sicher, wie ich mehrere Zeilen damit summieren kann INDEX/MATCH.

Die Ausgabe, die ich suche, ist wie folgt:

(kann das auch nicht einbetten)

Aber am wichtigsten möchte ich wissenSo summieren Sie mehrere bestimmte Zeilenund deshalb bitte icheine Formel für B16.

Antwort1

Wenn Sie die Möglichkeit haben, die Zellen in Spalte A zu trennen und zu normalisieren, SUMIFSsollte ein einfacher Schritt funktionieren. Andernfalls versuchen Sie Folgendes:

=SUMPRODUCT($C$2:$C$13,
1*($B$2:$B$13=$A16),
1*(ROW($A$2:$A$13)>=SMALL(ROW($A$2:$A$13)+100*($A$2:$A$13=""),B$15)),
1*(ROW($A$2:$A$13)<SMALL(ROW($A$2:$A$13)+100*($A$2:$A$13=""),B$15+1)))

Ergebnis:

╔════════╦════╦════╗
║  Day   ║ 1  ║ 2  ║
╠════════╬════╬════╣
║ Apple  ║ 60 ║ 90 ║
║ Orange ║  0 ║ 85 ║
║ Pear   ║ 75 ║  0 ║
╚════════╩════╩════╝

Quelle:

Die Formel geänderthier zu finden:

Erläuterung:

Der Kernteil ist die SMALLFunktion

SMALL(ROW($A$2:$A$13)+100*($A$2:$A$13=""),B$15)

Es erstellt ein Array von Zeilennummern für einen angegebenen Bereich, wobei Zellen, die nichts enthalten ( =""), einen Wert haben, der 100 höher ist als die entsprechende Zeilennummer ( +100*). Andererseits werden den Zellen, die die Bedingung nicht erfüllen (d. h. nicht leeren Zellen), nur ihre Zeilennummern zugewiesen. Dieses Array wird der SMALLFunktion mit B$15dem zweiten Argument übergeben, das sie anweist, daskkleinstes Element im Array.

Wir möchten also die Zeilen summieren, wobei die Zeile mit der Tagesnummer beginnt. Und genau das macht dieser Teil:

1*(ROW($A$2:$A$13)>=SMALL(ROW($A$2:$A$13)+100*($A$2:$A$13=""),B$15))

Wir möchten jedoch auch die Summierung bis zur Zelle direkt über der nächsten nicht leeren Zelle beschränken. Daher wird der <Operator und B$15+1(also(k+1)tekleinstes Element) im folgenden Teil:

1*(ROW($A$2:$A$13)<SMALL(ROW($A$2:$A$13)+100*($A$2:$A$13=""),B$15+1))

Antwort2

Wenn Sie die Zellen für Ihr DayFeld trennen können, so dass die Tagesnummer in jeder Zeile erscheint,Pivot-Tabellewäre bei weitem der einfachste Weg, um das gewünschte Ergebnis zu erzielen:

Drehpunkt

verwandte Informationen