
Általános képlet
=SUMPRODUCT(--(MOD(COLUMN(rng)-COLUMN(rng.first)+1,n)=0),rng)
Összegzés
Minden n-edik oszlop összegzéséhez használhatja a SUMPRODUCT, MOD és COLUMN függvényeken alapuló képletet.
A bemutatott példában az L5 képlete a következő:
=SUMPRODUCT(--(MOD(COLUMN(B5:J5)-COLUMN(B5)+1,K5)=0),B5:J5)
Magyarázat
Lényegében a SUMPRODUCT segítségével összeadja a sor azon értékeit, amelyeket a MOD alapján logikával "szűrtek" le. A legfontosabb ez:
MOD(COLUMN(B5:J5)-COLUMN(B5)+1,K5)=0
Ez a képlet a COLUMN függvény segítségével kap egy "relatív" oszlopszámot a tartományhoz (itt részletesen elmagyarázva), amely így néz ki:
(1,2,3,4,5,6,7,8,9)
Ez így megy a MOD-ba:
MOD((1,2,3,4,5,6,7,8,9),K5)=0
ahol K5 az N értéke az egyes sorokban. A MOD függvény minden oszlopszám maradékát visszaadja N-vel osztva. Például, amikor N = 3, a MOD ilyesmit ad vissza:
(1,2,0,1,2,0,1,2,0)
Ne feledje, hogy a nullák a 3., 6., 9. oszlopban jelennek meg. A képlet = 0-t használ egy IGAZ kényszerítésére, amikor a maradék nulla, és a HAMISra, ha nem, akkor kettõs negatív (-) értéket használunk az IGAZ kényszerítésére, és HAMIS eggyel és nullával. Ez egy ilyen tömböt hagy maga után:
(0,0,1,0,0,1,0,0,1)
Ahol az 1-es jelöli az "n-edik értéket". Ez a SUMPRODUCT-ba kerül, mint tömb1, valamint a B5: J5 mint tömb2. A SUMPRODUCT ezután megteszi a dolgát, először megszorozva, majd összegezve a tömbök szorzatát.
Az egyetlen érték, amely "túléli" a szorzást, azokban a tömbökben 1 szerepel. Ilyen módon gondolkodhatunk azon a logikán, hogy az 1. tömb "kiszűri" a tömb2 értékeit.
Minden második oszlopot összegezzen
Ha minden más oszlopot összegezni szeretne, csak szükség szerint módosítsa ezt a képletet, szem előtt tartva, hogy a képlet automatikusan 1-et rendel a tartomány első oszlopához. A MÉG oszlop összegzéséhez használja:
=SUMPRODUCT(--(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=0),A1:Z1)
Az ODD oszlopok összegzéséhez használja:
=SUMPRODUCT(--(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=1),A1:Z1)