![](https://cdn.wiki-base.com/3950378/excel_formula_sum_every_nth_column__2.png.webp)
Generička formula
=SUMPRODUCT(--(MOD(COLUMN(rng)-COLUMN(rng.first)+1,n)=0),rng)
Sažetak
Da biste zbrojili svaki n-ti stupac, možete upotrijebiti formulu koja se temelji na funkcijama SUMPRODUCT, MOD i COLUMN.
U prikazanom primjeru formula u L5 je:
=SUMPRODUCT(--(MOD(COLUMN(B5:J5)-COLUMN(B5)+1,K5)=0),B5:J5)
Obrazloženje
U osnovi koristi SUMPRODUCT za zbrajanje vrijednosti u nizu koje su "filtrirane" uporabom logike temeljene na MOD-u. Ključno je ovo:
MOD(COLUMN(B5:J5)-COLUMN(B5)+1,K5)=0
Ovaj isječak formule koristi funkciju COLUMN da bi dobio skup "relativnih" brojeva stupaca za raspon (ovdje detaljno objašnjen) koji izgleda ovako:
(1,2,3,4,5,6,7,8,9)
Ovo u MOD odlazi tako:
MOD((1,2,3,4,5,6,7,8,9),K5)=0
gdje je K5 vrijednost za N u svakom retku. MOD funkcija vraća ostatak za svaki broj stupca podijeljen s N. Tako će, na primjer, kada je N = 3, MOD vratiti nešto slično:
(1,2,0,1,2,0,1,2,0)
Imajte na umu da se nule pojavljuju u stupcima 3, 6, 9 itd. Formula koristi = 0 kako bi prisilila TRUE kada je ostatak nula, a FALSE kada nije, tada koristimo dvostruko negativno (-) da prisilimo TRUE i LAŽNO na jedinice i nule. To ostavlja ovakav niz:
(0,0,1,0,0,1,0,0,1)
Gdje 1s sada označavaju "n-te vrijednosti". To ulazi u SUMPRODUCT kao niz1, zajedno s B5: J5 kao niz2. SUMPRODUCT tada čini svoje, prvo množenjem, a zatim zbrajanjem proizvoda nizova.
Jedine vrijednosti koje "preživljavaju" množenje su one u kojima array1 sadrži 1. Na taj način možete smisliti logiku array1 koja "filtrira" vrijednosti u array2.
Zbroji svaki drugi stupac
Ako želite sažeti svaki drugi stupac, samo prilagodite ovu formulu po potrebi, imajući na umu da formula automatski dodjeljuje 1 prvom stupcu u rasponu. Da biste zbrojili EVEN stupce, upotrijebite:
=SUMPRODUCT(--(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=0),A1:Z1)
Da biste zbrojili ODD stupce, upotrijebite:
=SUMPRODUCT(--(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=1),A1:Z1)