Excel vzorec: Max. Každý n-tý stĺpec -

Obsah

Všeobecný vzorec

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

Zhrnutie

Ak chcete získať maximum pre každý n-tý stĺpec, môžete použiť maticový vzorec založený na funkciách MAX, MOD a COLUMN. V zobrazenom príklade je vzorec v M5:

=MAX(IF(MOD(COLUMN(B5:K5)-COLUMN(B5)+1,L5)=0,B5:K5))

Poznámka: toto je vzorec poľa a musí sa zadávať pomocou klávesov Control + Shift + Enter.

Vysvetlenie

Tento vzorec používa funkcie MOD a COLUMN na odfiltrovanie hodnôt, ktoré nie sú v n-tých stĺpcoch, a potom na výsledok spustí MAX.

Kľúčom je tento úryvok:

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

Tu vzorec používa funkciu COLUMN na získanie množiny „relatívnych“ čísel stĺpcov pre rozsah (podrobne vysvetlený tu), ktorý vyzerá takto:

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

Toto pole vstupuje do funkcie MOD ako argument čísla:

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

kde L5 je hodnota použitá pre „n-té“. Funkcia MOD vráti zvyšok pre každé číslo stĺpca vydelené N. Takže napríklad keď N = 3, MOD vráti pole podobné tomuto:

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

Upozorňujeme, že nuly sa objavujú pre stĺpce 3, 6, 9 atď., Čo zodpovedá každému 3. stĺpcu. Toto pole sa porovnáva s nulou s logickým výrazom = 0, aby vynútil hodnotu TRUE, keď je zvyšok nula, a hodnotu FALSE, ak nie. Tieto hodnoty vstupujú do funkcie IF ako logický test. Funkcia IF filtruje zodpovedajúcim spôsobom, takže do výsledného poľa sa dostanú iba hodnoty v pôvodnom rozsahu v n-tých stĺpcoch. Ostatné hodnoty sa stanú NEPRAVDA.

Keď n = 3, konečné pole vo vnútri MAX vyzerá takto:

MAX((FALSE,FALSE,11,FALSE,FALSE,8,FALSE,FALSE,19,FALSE))

Nakoniec funkcia MAX ignoruje FALSE hodnoty a vráti maximum zo zostávajúcich hodnôt, 19.

Max. Každého druhého stĺpca

Ak chcete získať maximum každého druhého stĺpca, prispôsobte tento vzorec podľa potreby, pochopenie vzorca automaticky priradí 1 prvému stĺpcu v rozsahu. Ak chcete získať maximum AJ stĺpcov, použite:

(=MAX(IF(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=0,rng)))

Ak chcete získať maximum stĺpcov ODD, použite:

(=MAX(IF(MOD(COLUMN(A1:Z1)-COLUMN(A1)+1,2)=1,rng)))

Zaujímavé články...