Excel-Formel: Einfache Bundle-Preisgestaltung mit SUMPRODUCT -

Inhaltsverzeichnis

Generische Formel

=SUMPRODUCT(costs,--(range="x"))

Zusammenfassung

Um die Preisgestaltung für Produktpakete mit einem einfachen "x" zum Einschließen oder Ausschließen eines Produkts zu berechnen, können Sie eine Formel verwenden, die auf der Funktion SUMPRODUCT basiert. In dem gezeigten Beispiel lautet die Formel in D11:

=SUMPRODUCT($C$5:$C$9,--(D5:D9="x"))

Erläuterung

Die Funktion SUMPRODUCT multipliziert Bereiche oder Arrays miteinander und gibt die Summe der Produkte zurück. Das klingt langweilig, aber SUMPRODUCT ist eine elegante und vielseitige Funktion, die dieses Beispiel gut veranschaulicht.

In diesem Beispiel ist SUMPRODUCT mit zwei Arrays konfiguriert. Das erste Array ist der Bereich, in dem die Produktpreise enthalten sind:

$C$5:$C$9

Beachten Sie, dass die Referenz absolut ist, um Änderungen zu verhindern, wenn die Formel nach rechts kopiert wird. Dieser Bereich ergibt das folgende Array:

(99;69;129;119;49)

Das zweite Array wird mit diesem Ausdruck generiert:

--(D5:D9="x")

Das Ergebnis von D5: D9 = "x" ist ein Array von TRUE FALSE-Werten wie folgt:

(TRUE;TRUE;FALSE;FALSE;FALSE)

Das doppelte Negativ (-) konvertiert diese TRUE FALSE-Werte in 1s und 0s:

(1;1;0;0;0)

In SUMPRODUCT haben wir also:

=SUMPRODUCT((99;69;129;119;49),(1;1;0;0;0))

Die SUMPRODUCT-Funktion multipliziert dann die entsprechenden Elemente in jedem Array miteinander:

=SUMPRODUCT((99;69;0;0;0))

und gibt die Summe der Produkte zurück, in diesem Fall 168.

Tatsächlich fungiert das zweite Array als Filter für die Werte im ersten Array. Nullen in Array2 heben Elemente in Array1 auf, und Einsen in Array2 ermöglichen es, dass Werte aus Array1 in das Endergebnis gelangen.

Mit einem einzigen Array

SUMPRODUCT ist so eingerichtet, dass mehrere Arrays akzeptiert werden. Sie können diese Formel jedoch ein wenig vereinfachen, indem Sie zu Beginn ein einzelnes Array bereitstellen:

=SUMPRODUCT($C$5:$C$9*(D5:D9="x"))

Die mathematische Operation (Multiplikation) zwingt die TRUE FALSE-Werte im zweiten Ausdruck automatisch zu Einsen und Nullen, ohne dass ein doppeltes Negativ erforderlich ist.

Interessante Beiträge...