Excel-formel: Summen af ​​hver nende kolonne -

Indholdsfortegnelse

Generisk formel

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

Resumé

For at opsummere hver nende kolonne kan du bruge en formel baseret på funktionerne SUMPRODUCT, MOD og COLUMN.

I det viste eksempel er formlen i L5:

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

Forklaring

I kernen bruger SUMPRODUCT til at opsummere værdier i en række, der er "filtreret" ved hjælp af logik baseret på MOD. Nøglen er denne:

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

Dette uddrag af formlen bruger COLUMN-funktionen til at få et sæt "relative" kolonnetal for området (forklaret detaljeret her), der ser sådan ud:

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

Dette går ind i MOD som sådan:

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

hvor K5 er værdien for N i hver række. MOD-funktionen returnerer resten for hvert kolonnetal divideret med N. Så når N = 3 for eksempel, vil MOD returnere noget som dette:

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

Bemærk, at nuller vises i kolonne 3, 6, 9 osv. Formlen bruger = 0 til at tvinge en SAND, når resten er nul, og en FALSK, når ikke, så bruger vi en dobbelt-negativ (-) til at tvinge SAND og FALSK for ener og nuller. Det efterlader en matrix som denne:

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

Hvor 1s nu angiver "nth-værdier". Dette går ind i SUMPRODUCT som array1 sammen med B5: J5 som array2. SUMPRODUCT gør derefter sine ting, først ganges de sammen og derefter sammenfattes produkter fra arrays.

De eneste værdier, der "overlever" multiplikation, er dem, hvor array1 indeholder 1. På denne måde kan du tænke på logikken med array1 "filtrering" af værdierne i array2.

Sum hver anden kolonne

Hvis du vil sammenfatte hver anden kolonne, skal du bare tilpasse denne formel efter behov og huske på, at formlen automatisk tildeler 1 til den første kolonne i området. For at opsummere EVEN-kolonner skal du bruge:

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

For at opsummere ODD-kolonner skal du bruge:

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

Interessante artikler...