Екцел формула: Зброј сваке н-те колоне -

Преглед садржаја

Генеричка формула

=SUMPRODUCT(--(MOD(COLUMN(rng)-COLUMN(rng.first)+1,n)=0),rng)

Резиме

Да бисте сумирали сваку н-ту колону, можете користити формулу засновану на функцијама СУМПРОДУЦТ, МОД и ЦОЛУМН.

У приказаном примеру, формула у Л5 је:

=SUMPRODUCT(--(MOD(COLUMN(B5:J5)-COLUMN(B5)+1,K5)=0),B5:J5)

Објашњење

У основи користи СУМПРОДУЦТ за сумирање вредности у низу које су „филтриране“ користећи логику засновану на МОД-у. Кључ је следећи:

MOD(COLUMN(B5:J5)-COLUMN(B5)+1,K5)=0

Овај исечак формуле користи функцију ЦОЛУМН да би добио скуп "релативних" бројева колона за опсег (овде детаљно објашњен) који изгледа овако:

(1,2,3,4,5,6,7,8,9)

Ово иде у МОД тако:

MOD((1,2,3,4,5,6,7,8,9),K5)=0

где је К5 вредност за Н у сваком реду. МОД функција враћа остатак за сваки број колоне подељен са Н. Дакле, на пример, када је Н = 3, МОД ће вратити нешто попут овог:

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

Имајте на уму да се нуле појављују у колонама 3, 6, 9 итд. Формула користи = 0 за форсирање ТРУЕ када је остатак нула и ФАЛСЕ када није, тада користимо двоструко негативно (-) за присиљавање ТРУЕ и ЛАЖНО на јединице и нуле. То оставља низ попут овог:

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

Где 1с сада означавају „н-те вредности“. Ово иде у СУМПРОДУЦТ као низ1, заједно са Б5: Ј5 као низ2. СУМПРОДУЦТ затим чини своје, прво множењем, а затим сумирањем производа низова.

Једине вредности које „преживе“ множење су оне где низ 1 садржи 1. На овај начин можете смислити логику поља „филтрирање“ вредности у низу 2.

Зброји сваку другу колону

Ако желите да збројите сваку другу колону, само прилагодите ову формулу по потреби, имајући на уму да формула аутоматски додељује 1 првој колони у опсегу. Да бисте сумили ЕВЕН колоне, користите:

=SUMPRODUCT(--(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=0),A1:Z1)

Да бисте сумирали ОДД колоне, користите:

=SUMPRODUCT(--(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=1),A1:Z1)

Занимљиви Чланци...