Excel MAX IF formúla til að finna stærsta gildi með skilyrðum

  • Deildu Þessu
Michael Brown

Greinin sýnir nokkrar mismunandi leiðir til að fá hámarksgildi í Excel byggt á einu eða nokkrum skilyrðum sem þú tilgreinir.

Í fyrri kennslunni okkar skoðuðum við algenga notkun af MAX fallinu sem er hannað til að skila stærstu tölunni í gagnapakka. Í sumum tilfellum gætirðu hins vegar þurft að kafa ofan í gögnin þín til að finna hámarksgildið út frá ákveðnum forsendum. Þetta er hægt að gera með því að nota nokkrar mismunandi formúlur og þessi grein útskýrir allar mögulegar leiðir.

    Excel MAX IF formúla

    Þangað til nýlega var Microsoft Excel ekki með innbyggð MAX IF aðgerð til að fá hámarksgildi miðað við aðstæður. Með tilkomu MAXIFS í Excel 2019 getum við gert skilyrt hámark á auðveldan hátt.

    Í Excel 2016 og fyrri útgáfum þarftu samt að búa til þína eigin fylkisformúlu með því að sameina MAX fall með IF setningu:

    {=MAX(IF( viðmiðunarsvið= viðmið, hámarkssvið))}

    Til að sjá hvernig þetta almenna MAX EF formúla virkar á raunverulegum gögnum skaltu íhuga eftirfarandi dæmi. Segjum sem svo að þú sért með töflu með langstökkum nokkurra nemenda. Taflan inniheldur gögn fyrir þrjár umferðir og þú ert að leita að besta árangri tiltekins íþróttamanns, segir Jakob. Með nöfn nemenda í A2:A10 og vegalengdir í C2:C10, tekur formúlan þessa mynd:

    =MAX(IF(A2:A10="Jacob", C2:C10))

    Vinsamlegast hafðu í huga að fylkisformúlaverður alltaf að slá inn með því að ýta á Ctrl + Shift + Enter takkana samtímis. Fyrir vikið er það sjálfkrafa umkringt hrokknum svigum eins og sýnt er á skjámyndinni hér að neðan (að slá inn axlaböndin handvirkt virkar ekki!).

    Í raunveruleikablöðum, það er þægilegra að setja inn viðmiðunina í sumum klefi, þannig að þú getur auðveldlega breytt ástandinu án þess að breyta formúlunni. Þannig að við sláum inn nafnið sem óskað er eftir í F1 og fáum eftirfarandi niðurstöðu:

    =MAX(IF(A2:A10=F1, C2:C10))

    Hvernig þessi formúla virkar

    Í rökfræðinni prófun á IF fallinu, berum við saman nafnalistann (A2:A10) við marknafnið (F1). Niðurstaða þessarar aðgerðar er fylki TRUE og FALSE, þar sem TRUE gildin tákna nöfn sem passa við marknafnið (Jacob):

    {FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE}

    Fyrir gildið_ ef_satt rök, við gefum upp langstökksniðurstöðurnar (C2:C10), þannig að ef rökfræðilega prófið metur til TRUE, er samsvarandi tala úr dálki C skilað. value_ if_false röksemdinni er sleppt, sem þýðir að það mun bara hafa FALSE gildi þar sem skilyrðið er ekki uppfyllt:

    {FALSE;FALSE;FALSE;5.48;5.42;5.57;FALSE;FALSE;FALSE}

    Þessi fylki er færð í MAX fallið, sem skilar hámarksfjölda sem hunsar FALSE gildin.

    Ábending. Til að sjá innri fylki sem fjallað er um hér að ofan skaltu velja samsvarandi hluta formúlunnar á vinnublaðinu þínu og ýta á F9 takkann. Ýttu á Esc takkann til að hætta í formúlumatinu.

    MAX IF formúla með margfeldiskilyrði

    Þegar þú þarft að finna hámarksgildi byggt á fleiri en einu skilyrði, geturðu annaðhvort:

    Notað hreiður IF staðhæfingar til að innihalda viðbótarskilyrði:

    {=MAX( IF( viðmiðunarsvið1 = viðmið1 , IF( viðmiðunarsvið2 = viðmið2 , hámarkssvið )))}

    Eða meðhöndla mörg skilyrði með því að nota margföldunaraðgerðina:

    {=MAX(IF(( viðmiðunarsvið1 = viðmið1 ) * ( viðmiðunarsvið2 = viðmið2 ), max_range ))}

    Segjum að þú sért með niðurstöður drengja og stúlkna í einni töflu og þú vilt finna lengsta stökkið meðal stúlkna í 3. umferð. , við sláum inn fyrsta viðmiðið (kvenkyns) í G1, annað viðmiðið (3) í G2, og notum eftirfarandi formúlur til að reikna út hámarksgildið:

    =MAX(IF(B2:B16=G1, IF(C2:C16=G2, D2:D16)))

    =MAX(IF((B2:B16=G1)*(C2:C16=G2), D2:D16))

    Þar sem báðar eru fylkisformúlur, vinsamlega mundu að ýta á Ctrl + Shift + Enter til að klára þær rétt.

    Eins og sést á skjámyndinni hér að neðan gefa formúlurnar sömu niðurstöðu, svo hver á að nota er spurning um yo persónulegt val þitt. Fyrir mig er formúlan með Boolean rökfræði auðveldari að lesa og smíða – hún gerir kleift að bæta við eins mörgum skilyrðum og þú vilt án þess að hreiður verði til viðbótar EF-aðgerðum.

    Hvernig þessar formúlur virka

    Fyrsta formúlan notar tvö hreiður IF-föll til að meta tvö viðmið. Í rökréttu prófi fyrstu IF yfirlýsingarinnar berum við saman gildin í Kyn dálknum(B2:B16) með viðmiðuninni í G1 ("Kona"). Niðurstaðan er fylki TRUE og FALSE þar sem TRUE táknar gögn sem passa við viðmiðunina:

    {FALSE; FALSE; FALSE; TRUE; TRUE; TRUE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; TRUE; TRUE; TRUE}

    Á svipaðan hátt athugar annað EF fallið gildin í Round dálknum (C2) :C16) gegn viðmiðuninni í G2.

    Fyrir gildi_ef_sannur röksemdin í annarri IF yfirlýsingunni gefum við upp langstökksniðurstöðurnar (D2:D16) og þannig fáum við atriðin sem hafa TRUE í fyrstu tveimur fylkjunum í samsvarandi stöðu (þ.e. atriðin þar sem kynið er "kvenkyns" og umferðin er 3):

    {FALSE; FALSE; FALSE; FALSE; FALSE; 4.63; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; 4.52}

    Þessi lokafylki fer í MAX fallið og hún skilar stærstu tölunni.

    Önnur formúlan metur sömu skilyrði innan eins rökrétts prófs og margföldunaraðgerðin virkar eins og OG-operator:

    Þegar TRUE og FALSE gildin eru notuð í einhverju reikniaðgerð, þeim er breytt í 1 og 0 í sömu röð. Og vegna þess að margföldun með 0 gefur alltaf núll, þá hefur fylkið sem myndast 1 aðeins þegar öll skilyrði eru SÖNN. Þetta fylki er metið í rökréttu prófi IF fallsins, sem skilar þeim fjarlægðum sem samsvara 1 (TRUE) þáttunum.

    MAX IF án fylkis

    Margir Excel notendur, þar á meðal ég, eru hafa fordóma gegn fylkisformúlum og reyna að losna við þær þar sem hægt er. Sem betur fer hefur Microsoft Excel nokkrar aðgerðir sem sjá um fylki innfæddur og við getum notað einaslíkra aðgerða, nefnilega SUMPRODUCT, sem „umbúðir“ í kringum MAX.

    Almenna MAX IF formúlan án fylkis er sem hér segir:

    =SUMPRODUCT(MAX(( criteria_range1 = viðmið1 ) * ( viðmiðunarsvið2 = viðmið2 ) * hámarkssvið ))

    Eðlilega er hægt að bæta við fleiri svið/viðmiðapörum ef þörf.

    Til að sjá formúluna í notkun munum við nota gögnin úr fyrra dæminu. Markmiðið er að ná hámarksstökki kvenkyns íþróttamanns í 3. umferð:

    =SUMPRODUCT(MAX(((B2:B16=G1) * (C2:C16=G2) * (D2:D16))))

    Þessi formúla er keppt með venjulegum Enter takkaáslætti og skilar sömu niðurstöðu og fylkis MAX IF formúlan:

    Ef þú lítur nánar á skjámyndina hér að ofan geturðu tekið eftir því að ógild stökk merkt með "x" í fyrri dæmunum hafa nú 0 gildi í línum 3, 11 og 15 , og næsti hluti útskýrir hvers vegna.

    Hvernig þessi formúla virkar

    Eins og með MAX IF formúluna, metum við tvö viðmið með því að bera saman hvert gildi í Kyn (B2:B16) og Round ( C2:C16) dálka með viðmiðunum í hólfum G1 og G2. Niðurstaðan eru tvær fylkingar af TRUE og FALSE gildi. Með því að margfalda þætti fylkanna í sömu stöðu breytist TRUE og FALSE í 1 og 0, í sömu röð, þar sem 1 táknar atriðin sem uppfylla bæði skilyrðin. Þriðja margfaldaða fylkið inniheldur langstökin (D2:D16). Og vegna þess að margföldun með 0 gefur núll, þá eru aðeins hlutir sem hafa 1 (TRUE) í samsvarandi stöðulifa af:

    {0; 0; 0; 0; 0; 4.63; 0; 0; 0; 0; 0; 0; 0; 0; 4.52}

    Ef max_range inniheldur eitthvert textagildi, skilar margföldunaraðgerðin #VALUE villunni þar sem öll formúlan virkar ekki.

    MAX fallið tekur það héðan og skilar stærstu tölunni sem uppfyllir tilgreind skilyrði. Fylki sem myndast sem samanstendur af einum staki {4.63} fer í SUMPRODUCT fallið og það gefur út hámarksfjölda í reit.

    Athugið. Vegna sérstakra rökfræði sinnar virkar formúlan með eftirfarandi fyrirvara:

    • Sviðið þar sem þú leitar að hæsta gildinu verður að innihalda aðeins tölur. Ef það eru einhver textagildi, er #VALUE! villa er skilað.
    • Formúlan getur ekki metið ástandið „ekki jafnt og núll“ í neikvæðu gagnasetti. Til að finna hámarksgildi sem hunsar núll skaltu nota annað hvort MAX IF formúlu eða MAXIFS fall.

    Excel MAX IF formúlu með OR rökfræði

    Til að finna hámarksgildi þegar hvað sem er af tilgreindum skilyrðum er uppfyllt, notaðu nú þegar kunnuglega fylkið MAX IF formúlu með Boolean rökfræði, en bættu við skilyrðunum í stað þess að margfalda þau.

    {=MAX(IF(( viðmiðunarsvið1 = viðmið1 ) + ( viðmiðunarsvið2 = viðmið2 ), hámarkssvið ))}

    Að öðrum kosti geturðu notað eftirfarandi formúlu sem ekki er fylki :

    =SUMVARA(MAX((( viðmiðunarsvið1 = viðmið1 ) + ( viðmiðunarsvið2 = viðmið2 )) * max_range ))

    Sem dæmi skulum við vinna úrbesti árangurinn í 2. og 3. umferð. Athugið að í Excel tungumálinu er verkefnið mótað á annan hátt: skilaðu hámarksgildi ef umferð er annað hvort 2 eða 3.

    Með umferðunum sem taldar eru upp í B2:B10 , niðurstöður í C2:C10 og viðmið í F1 og H1, formúlan er sem hér segir:

    =MAX(IF((B2:B10=F1) + (B2:B10=H1), C2:C10))

    Sláðu inn formúluna með því að ýta á Ctrl + Shift + Enter lyklasamsetningu og þú færð þessi niðurstaða:

    Hámarksgildi með sömu skilyrðum er einnig hægt að finna með því að nota þessa formúlu sem er ekki fylki:

    =SUMPRODUCT(MAX(((B2:B10=F1) + (B2:B10=H1)) * C2:C10))

    Hins vegar þurfum við að skipta út öllum "x" gildum í dálki C fyrir núll í þessu tilfelli vegna þess að SUMPRODUCT MAX virkar aðeins með tölulegum gögnum:

    Hvernig þessar formúlur virka

    Fylkisformúlan virkar nákvæmlega á sama hátt og MAX IF með OG rökfræði nema að þú sameinar viðmiðin með því að nota samlagningaraðgerðina í stað margföldunar. Í fylkisformúlum virkar samlagning sem OR-operator:

    Að leggja saman tvö fylki af TRUE og FALSE (sem leiðir af því að athuga gildin í B2:B10 á móti viðmiðunum í F1 og H1) myndar fylki af 1 og 0 þar sem 1 táknar atriðin þar sem annaðhvort skilyrðið er SANNT og 0 táknar atriðin þar sem bæði skilyrðin eru RANGT. Afleiðingin er sú að IF fallið „heldur“ öllum hlutum í C2:C10 ( gildi_ef_satt ) sem hvaða skilyrði eru fyrir er TRUE (1); öðrum hlutum er skipt út fyrir FALSE vegna þess að value_if_false rök eru ekki tilgreind.

    Formúlan sem ekki er fylki virkar á svipaðan hátt. Munurinn er sá að í stað rökfræðilegrar prófunar IF margfaldar þú þætti 1 og 0 fylkisins með þáttum langstökks niðurstöðu fylkisins (C2:C10) í samsvarandi stöðum. Þetta ógildir atriðin sem uppfylla engin skilyrði (hafa 0 í fyrstu fylkinu) og halda hlutunum sem uppfylla eitt af skilyrðunum (hafa 1 í fyrstu fylkinu).

    MAXIFS – auðveld leið til að finna hæsta gildi með skilyrðum

    Notendur Excel 2019, 2021 og Excel 365 eru lausir við vandræði við að temja fylki til að búa til sína eigin MAX IF formúlu. Þessar útgáfur af Excel bjóða upp á langþráða MAXIFS aðgerð sem gerir það að verkum að það er barnaleikur að finna stærsta gildið með skilyrðum.

    Í fyrstu röksemdafærslu MAXIFS slærðu inn svið þar sem hámarksgildið á að finnast (D2: D16 í okkar tilviki), og í síðari röksemdum geturðu slegið inn allt að 126 svið/viðmiðapör. Til dæmis:

    =MAXIFS(D2:D16, B2:B16, G1, C2:C16, G2)

    Eins og sést á skjámyndinni hér að neðan, þá á þessi einfalda formúla ekki í neinum vandræðum með að vinna úr bilinu sem inniheldur bæði töluleg og textagildi:

    Fyrir nákvæmar upplýsingar um þessa aðgerð, vinsamlegast sjá Excel MAXIFS fall með formúludæmum.

    Þannig geturðu fundið hámarksgildi með skilyrðum í Excel. Ég þakka þér fyrir að lesa og vonast til að sjá þig á blogginu okkar næstviku!

    Æfingabók til niðurhals

    Excel MAX IF formúludæmi (.xlsx skrá)

    Michael Brown er hollur tækniáhugamaður með ástríðu fyrir því að einfalda flókna ferla með hugbúnaðarverkfærum. Með meira en áratug af reynslu í tækniiðnaðinum hefur hann aukið færni sína í Microsoft Excel og Outlook, sem og Google Sheets og Docs. Blogg Michael er tileinkað því að deila þekkingu sinni og sérfræðiþekkingu með öðrum, veita auðveld ráð og leiðbeiningar til að bæta framleiðni og skilvirkni. Hvort sem þú ert vanur fagmaður eða byrjandi, þá býður blogg Michaels upp á dýrmæta innsýn og hagnýt ráð til að fá sem mest út úr þessum nauðsynlegu hugbúnaðarverkfærum.