Excel vzorec: Snadné stanovení ceny balíku pomocí SUMPRODUCT -

Obsah

Obecný vzorec

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

souhrn

Chcete-li vypočítat cenu balíčku produktu pomocí jednoduchého znaku „x“ pro zahrnutí nebo vyloučení produktu, můžete použít vzorec založený na funkci SUMPRODUCT. V zobrazeném příkladu je vzorec v D11:

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

Vysvětlení

Funkce SUMPRODUCT znásobuje rozsahy nebo pole a vrací součet produktů. Zní to nudně, ale SUMPRODUCT je elegantní a univerzální funkce, kterou tento příklad pěkně ilustruje.

V tomto příkladu je SUMPRODUCT nakonfigurován se dvěma poli. První pole je rozsah, který obsahuje ceny produktu:

$C$5:$C$9

Všimněte si, že odkaz je absolutní, aby se zabránilo změnám, protože vzorec je kopírován vpravo. Tento rozsah se vyhodnotí na následující pole:

(99;69;129;119;49)

Druhé pole je generováno s tímto výrazem:

--(D5:D9="x")

Výsledkem D5: D9 = "x" je pole TRUE FALSE hodnot, jako je tato:

(TRUE;TRUE;FALSE;FALSE;FALSE)

Dvojitý zápor (-) převede tyto SKUTEČNÉ NEPRAVDIVÉ hodnoty na 1 s a 0 s:

(1;1;0;0;0)

Takže uvnitř SUMPRODUCT máme:

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

Funkce SUMPRODUCT poté znásobí odpovídající položky v každém poli společně:

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

a vrátí součet produktů, v tomto případě 168.

Účinně druhé pole funguje jako filtr hodnot v prvním poli. Nuly v poli2 zruší položky v poli1 a 1s v poli2 umožňují, aby hodnoty z pole1 procházely do konečného výsledku.

S jediným polem

SUMPRODUCT je nastaven tak, aby přijímal více polí, ale tento vzorec můžete trochu zjednodušit poskytnutím jediného pole na začátku:

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

Matematická operace (multiplikace) automaticky vynutí hodnoty TRUE FALSE v druhém výrazu na jedničky a nuly, aniž by bylo nutné dvojitý zápor.

Zajímavé články...