![](https://cdn.wiki-base.com/6459371/excel_formula_easy_bundle_pricing_with_sumproduct__2.png.webp)
Generička formula
=SUMPRODUCT(costs,--(range="x"))
Sažetak
Da biste izračunali cijene paketa proizvoda pomoću jednostavnog znaka "x" za uključivanje ili isključivanje proizvoda, možete koristiti formulu koja se temelji na funkciji SUMPRODUCT. U prikazanom primjeru formula u D11 je:
=SUMPRODUCT($C$5:$C$9,--(D5:D9="x"))
Obrazloženje
Funkcija SUMPRODUCT množi raspone ili nizove i vraća zbroj proizvoda. Ovo zvuči dosadno, ali SUMPRODUCT je elegantna i svestrana funkcija, što ovaj primjer lijepo ilustrira.
U ovom primjeru, SUMPRODUCT je konfiguriran s dva polja. Prvi niz je raspon koji drži cijene proizvoda:
$C$5:$C$9
Imajte na umu da je referenca apsolutna kako bi se spriječile promjene jer se formula kopira udesno. Ovaj se raspon procjenjuje na sljedeći niz:
(99;69;129;119;49)
Drugi niz generira se s ovim izrazom:
--(D5:D9="x")
Rezultat D5: D9 = "x" je niz TRUE FALSE vrijednosti poput ove:
(TRUE;TRUE;FALSE;FALSE;FALSE)
Dvostruki negativ (-) pretvara ove TRUE FALSE vrijednosti u 1s i 0s:
(1;1;0;0;0)
Dakle, unutar SUMPRODUCT-a imamo:
=SUMPRODUCT((99;69;129;119;49),(1;1;0;0;0))
Funkcija SUMPRODUCT zatim množi odgovarajuće stavke u svakom nizu zajedno:
=SUMPRODUCT((99;69;0;0;0))
i vraća zbroj proizvoda, 168 u ovom slučaju.
U stvari, drugi niz djeluje kao filtar vrijednosti u prvom polju. Nule u nizu2 poništavaju stavke u nizu1, a 1s u nizu2 omogućuju prolazak vrijednosti iz niza1 u konačni rezultat.
S jednim nizom
SUMPRODUCT je postavljen za prihvaćanje više nizova, ali ovu formulu možete malo pojednostaviti pružajući jedan niz na početku:
=SUMPRODUCT($C$5:$C$9*(D5:D9="x"))
Matematička operacija (množenje) automatski prisiljava TRUE FALSE vrijednosti u drugom izrazu na jedinice i nule, bez potrebe za dvostrukim negativom.