Excel formula: Zbirke stupaca na temelju susjednih kriterija -

Generička formula

=SUMPRODUCT(--(range1=criteria),range2)

Sažetak

Da biste zbrojili ili zbrojili stupce na temelju kriterija u susjednim stupcima, možete upotrijebiti formulu koja se temelji na funkciji SUMPRODUCT. U prikazanom primjeru formula u J5 je:

=SUMPRODUCT(--($B5:$H5=J$4),$C5:$I5)

Obrazloženje

U osnovi, ova formula koristi SUMPRODUCT za množenje, a zatim zbrajanje proizvoda dva polja: polja1 i polja2 . Prvi niz, array1 postavljen je da djeluje kao "filtar" koji dopušta samo vrijednosti koje zadovoljavaju kriterije.

Array1 koristi raspon koji započinje u prvom stupcu koji sadrži vrijednosti koje moraju proći kriterije. Te "vrijednosti kriterija" nalaze se u stupcu s lijeve strane i neposredno uz "vrijednosti podataka".

Kriteriji se primjenjuju kao jednostavan test koji stvara niz TRUE i FALSE vrijednosti:

--($B5:$H5=J$4)

Ovaj bit formule "testira" svaku vrijednost u prvom polju koristeći isporučene kriterije, a zatim koristi dvostruko negativan (-) za prisiljavanje rezultirajućih vrijednosti TRUE i FALSE na 1 i 0. Rezultat izgleda ovako:

(1,0,0,0,1,0,1)

Imajte na umu da 1 odgovaraju stupcima 1,5 i 7 koji udovoljavaju kriterijima "A".

Za niz 2 unutar SUMPRODUCT-a koristimo raspon koji je "pomaknut" za jedan stupac udesno. Ovaj raspon započinje s prvim stupcem koji sadrži vrijednosti koje se zbrajaju i završava zadnjim stupcem koji sadrži vrijednosti za zbroj.

Dakle, u primjeru formule u J5, nakon što su nizovi popunjeni, imamo:

=SUMPRODUCT((1,0,0,0,1,0,1),(1,"B",1,"A",1,"A",1))

Budući da je SUMPRODUCT posebno programiran da ignorira pogreške koje nastaju množenjem tekstualnih vrijednosti, konačni niz izgleda ovako:

(1,0,0,0,1,0,1)

Jedine vrijednosti koje "prežive" množenje su one koje odgovaraju 1s unutar polja1 . Možete razmišljati o logici u array1 "filtriranju" vrijednosti u array2 .

Zanimljivi članci...