
Üldine valem
=SUMPRODUCT(--(MOD(COLUMN(rng)-COLUMN(rng.first)+1,n)=0),rng)
Kokkuvõte
Iga n-nda veeru kokkuvõtteks võite kasutada valemit, mis põhineb funktsioonidel SUMPRODUCT, MOD ja COLUMN.
Näidatud näites on L5 valem:
=SUMPRODUCT(--(MOD(COLUMN(B5:J5)-COLUMN(B5)+1,K5)=0),B5:J5)
Selgitus
Põhimõtteliselt kasutab SUMPRODUCT rea väärtuste summeerimiseks, mis on MOD-il põhineva loogika abil "filtreeritud". Peamine on see:
MOD(COLUMN(B5:J5)-COLUMN(B5)+1,K5)=0
See valemi koodilõik kasutab funktsiooni COLUMN, et saada vahemiku jaoks "suhteliste" veerunumbrite komplekt (mida on siin üksikasjalikult kirjeldatud), mis näeb välja järgmine:
(1,2,3,4,5,6,7,8,9)
See läheb MOD-i sisse nii:
MOD((1,2,3,4,5,6,7,8,9),K5)=0
kus K5 on N väärtus igas reas. Funktsioon MOD tagastab iga veeru numbri jäägi jagatuna N-ga. Näiteks kui N = 3, tagastab MOD midagi sellist:
(1,2,0,1,2,0,1,2,0)
Pange tähele, et veergude 3, 6, 9 jne korral kuvatakse nullid. Valem kasutab = 0, et sundida TÕENE, kui ülejäänud on null, ja VÄÄR, kui mitte, siis kasutame TÕENE sundimiseks topeltnegatiivset (-) ja VÄÄR ühedele ja nullidele. See jätab sellise massiivi:
(0,0,1,0,0,1,0,0,1)
Kus 1s tähistab nüüd "n-te väärtust". See läheb SUMPRODUCT-i kui massiiv1 koos B5: J5-ga kui massiiv2. Seejärel teeb SUMPRODUCT oma asja, korrutades kõigepealt massiivide korrutised ja liites need kokku.
Ainsad korrutamise "ellujäävad" väärtused on need, kus massiiv1 sisaldab 1. Sel moel võite mõelda massiivi 1 loogikale, mis "filtreerib" massiivi2 väärtused.
Summaeri iga teine veerg
Kui soovite kokku arvutada kõik muud veerud, kohandage seda valemit vastavalt vajadusele, pidades meeles, et valem määrab vahemiku esimesele veerule automaatselt 1. EVEN veergude kokkuvõtteks kasutage järgmist:
=SUMPRODUCT(--(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=0),A1:Z1)
ODD veergude summeerimiseks kasutage järgmist:
=SUMPRODUCT(--(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=1),A1:Z1)