Formula Excel: Suma fiecărei coloane a n-a -

Cuprins

Formula generică

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

rezumat

Pentru a rezuma fiecare coloană a noua, puteți utiliza o formulă bazată pe funcțiile SUMPRODUCT, MOD și COLUMN.

În exemplul prezentat, formula din L5 este:

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

Explicaţie

La bază, folosește SUMPRODUCT pentru a suma valorilor într-un rând care au fost „filtrate” folosind logica bazată pe MOD. Cheia este următoarea:

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

Acest fragment de formulă folosește funcția COLUMN pentru a obține un set de numere de coloană „relative” pentru interval (explicat în detaliu aici) care arată astfel:

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

Acest lucru intră în MOD așa:

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

unde K5 este valoarea pentru N în fiecare rând. Funcția MOD returnează restul pentru fiecare număr de coloană împărțit la N. Deci, de exemplu, când N = 3, MOD va returna ceva de genul acesta:

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

Rețineți că zero-urile apar pentru coloanele 3, 6, 9 etc. Formula folosește = 0 pentru a forța un TRUE atunci când restul este zero și un FALSE când nu, atunci folosim un dublu negativ (-) pentru a constrânge TRUE și FALS la unii și la zerouri. Acest lucru lasă o matrice ca aceasta:

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

Acolo unde 1 indică acum „valori n”. Acest lucru intră în SUMPRODUCT ca array1, împreună cu B5: J5 ca array2. SUMPRODUCT își face apoi treaba, mai întâi înmulțind, apoi însumând produsele din matrice.

Singurele valori care „supraviețuiesc” înmulțirii sunt cele în care tabloul1 conține 1. În acest fel, vă puteți gândi la logica matricei 1 „filtrarea” valorilor din tabloul2.

Sumați toate celelalte coloane

Dacă doriți să rezumați toate celelalte coloane, trebuie doar să adaptați această formulă după cum este necesar, ținând cont că formula atribuie automat 1 primei coloane din interval. Pentru a însuma EVEN coloane, utilizați:

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

Pentru a rezuma coloanele ODD, utilizați:

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

Articole interesante...