![](https://cdn.wiki-base.com/6998851/excel_formula_max_of_every_nth_column__2.png.webp)
Generisk formel
(=MAX(IF(MOD(COLUMN(rng)-COLUMN(rng.first)+1,n)=0,rng)))
Sammendrag
For å få maksimalt hver nende kolonne, kan du bruke en matriseformel basert på MAX, MOD og COLUMN-funksjonene. I eksemplet vist er formelen i M5:
=MAX(IF(MOD(COLUMN(B5:K5)-COLUMN(B5)+1,L5)=0,B5:K5))
Merk: dette er en matriseformel og må angis med kontroll + skift + enter.
Forklaring
Denne formelen bruker MOD- og COLUMN-funksjonene til å filtrere ut verdier som ikke er i nte kolonner, og kjører deretter MAX på resultatet.
Nøkkelen er denne kodebiten:
MOD(COLUMN(B5:K5)-COLUMN(B5)+1,L5)=0
Her bruker formelen KOLONN-funksjonen for å få et sett med "relative" kolonnetall for området (forklart i detalj her) som ser slik ut:
(1,2,3,4,5,6,7,8,9,10)
Denne matrisen går inn i MOD-funksjonen som antallargument:
MOD((1,2,3,4,5,6,7,8,9,10),K5)=0
der L5 er verdien som skal brukes for "nth". MOD-funksjonen returnerer resten for hvert kolonnetall delt på N. Så når N = 3 for eksempel, vil MOD returnere en matrise som dette:
(1,2,0,1,2,0,1,2,0,1)
Merk at nuller vises for kolonnene 3, 6, 9 osv., Som tilsvarer hver tredje kolonne. Denne matrisen sammenlignes med null med det logiske uttrykket = 0 for å tvinge en SANT når resten er null og en FALSK når ikke. Disse verdiene går inn i IF-funksjonen som den logiske testen. IF-funksjonen filtrerer deretter, så bare verdier i det opprinnelige området i nte kolonner gjør det til den endelige matrisen. De andre verdiene blir FALSE.
Når n = 3, ser den endelige matrisen i MAX slik ut:
MAX((FALSE,FALSE,11,FALSE,FALSE,8,FALSE,FALSE,19,FALSE))
Til slutt ignorerer MAX-funksjonen FALSE verdier og returnerer maksimalt antall gjenværende verdier, 19.
Maks av hver annen kolonne
Hvis du ønsker å få maksimalt hver annen kolonne, er det bare å tilpasse denne formelen etter behov. Å forstå formelen tilordner automatisk 1 til den første kolonnen i området. For å få maksimalt EVEN kolonner, bruk:
(=MAX(IF(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=0,rng)))
For å få maksimalt antall ODD-kolonner, bruk:
(=MAX(IF(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=1,rng)))