Excel-kaava: Jokaisen n. Sarakkeen enimmäismäärä -

Sisällysluettelo

Yleinen kaava

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

Yhteenveto

Saadaksesi jokaisen n: nnen sarakkeen enimmäismäärän, voit käyttää taulukkoa, joka perustuu funktioihin MAX, MOD ja COLUMN. Esitetyssä esimerkissä kaava M5: ssä on:

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

Huomaa: tämä on matriisikaava ja se on syötettävä näppäimillä + + shift + enter.

Selitys

Tämä kaava käyttää MOD- ja COLUMN-funktioita suodattamaan arvot, jotka eivät ole n. Sarakkeessa, ja suorittaa sitten tuloksen MAX.

Avain on tämä katkelma:

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

Tässä kaava käyttää COLUMN-funktiota saadakseen joukon "suhteellisia" sarakkeiden numeroita alueelle (selitetty yksityiskohtaisesti täällä), joka näyttää tältä:

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

Tämä taulukko menee MOD-funktioon numeroargumenttina:

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

missä L5 on arvo, jota käytetään arvoon "n". MOD-funktio palauttaa loput jokaiselle sarakkeen numerolle jaettuna N: llä. Joten esimerkiksi kun N = 3, MOD palauttaa seuraavanlaisen taulukon:

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

Huomaa, että sarakkeissa 3, 6, 9 jne. On nollia, jotka vastaavat jokaista 3. saraketta. Tätä taulukkoa verrataan nollaan loogisella lausekkeella = 0 pakottaakseen TOSI, kun loppuosa on nolla ja EPÄTOSI, kun ei. Nämä arvot menevät IF-funktioon loogisena testinä. IF-toiminto suodatetaan vastaavasti, joten vain alkuperäisen alueen arvot n. Sarakkeessa tekevät siitä lopullisen taulukon. Muista arvoista tulee EPÄTOSI.

Kun n = 3, MAX: n sisällä oleva viimeinen taulukko näyttää tältä:

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

Lopuksi MAX-toiminto ohittaa FALSE-arvot ja palauttaa jäljellä olevien arvojen maksimiarvon 19.

Enintään joka toinen sarake

Jos haluat saada jokaisen toisen sarakkeen enimmäismäärän, mukauta vain tätä kaavaa tarpeen mukaan, kun ymmärrät, että kaava osoittaa automaattisesti 1 alueen ensimmäiselle sarakkeelle. Saadaksesi EVEN-sarakkeiden enimmäismäärän, käytä:

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

Saadaksesi ODD-sarakkeiden enimmäismäärän, käytä:

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

Mielenkiintoisia artikkeleita...