Екцел МАКС ИФ формула за проналажење највеће вредности са условима

  • Деле Ово
Michael Brown

У чланку је приказано неколико различитих начина за добијање максималне вредности у Екцел-у на основу једног или више услова које наведете.

У нашем претходном водичу погледали смо уобичајене употребе функције МАКС која је дизајнирана да врати највећи број у скупу података. У неким ситуацијама, међутим, можда ћете морати даље да се бавите својим подацима да бисте пронашли максималну вредност на основу одређених критеријума. Ово се може урадити коришћењем неколико различитих формула, а овај чланак објашњава све могуће начине.

    Екцел МАКС ИФ формула

    До недавно, Мицрософт Екцел није имао уграђена функција МАКС ИФ за добијање максималне вредности на основу услова. Са увођењем МАКСИФС-а у Екцел 2019, можемо да урадимо условни максимум на једноставан начин.

    У Екцел 2016 и старијим верзијама, и даље морате да креирате сопствену формулу низа комбиновањем МАКС функција са ИФ наредбом:

    {=МАКС(ИФ( опсег_критеријума= критеријум, мак_опсег))}

    Да бисте видели како овај генерички МАКС АКО формула ради на стварним подацима, размотрите следећи пример. Претпоставимо да имате табелу са резултатима неколико ученика у скоку у даљ. У табели су подаци за три кола, а ви тражите најбољи резултат одређеног спортисте, рецимо Јацоба. Са именима ученика у А2:А10 и растојањима у Ц2:Ц10, формула добија овај облик:

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

    Имајте на уму да формула низаувек се мора унети истовременим притиском на тастере Цтрл + Схифт + Ентер. Као резултат, он је аутоматски окружен витичастим заградама као што је приказано на слици испод (ручно куцање заграда неће радити!).

    У радним листовима из стварног живота, згодније је унети критеријум у неке ћелије, тако да можете лако да промените услов без промене формуле. Дакле, укуцавамо жељено име у Ф1 и добијамо следећи резултат:

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

    Како ова формула функционише

    У логичком тестом функције ИФ, упоређујемо листу имена (А2:А10) са именом циља (Ф1). Резултат ове операције је низ ТРУЕ и ФАЛСЕ, где вредности ТРУЕ представљају имена која одговарају називу циља (Јацоб):

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

    За валуе_ иф_труе аргумент, достављамо резултате скока у даљ (Ц2:Ц10), тако да ако логички тест процењује ТРУЕ, враћа се одговарајући број из колоне Ц. Аргумент валуе_ иф_фалсе је изостављен, што значи да ће имати само ФАЛСЕ вредност када услов није испуњен:

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

    Овај низ се шаље функцији МАКС, која враћа максималан број занемарујући вредности ФАЛСЕ.

    Савет. Да бисте видели унутрашње низове о којима је било речи, изаберите одговарајући део формуле на радном листу и притисните тастер Ф9. Да бисте изашли из режима евалуације формуле, притисните тастер Есц.

    МАКС ИФ формула са вишеструкимкритеријуми

    У ситуацији када треба да пронађете максималну вредност на основу више од једног услова, можете или:

    Користите угнежђене ИФ изјаве да бисте укључили додатне критеријуме:

    {=МАКС( ИФ( опсег_критерија1 = критеријум1 , ИФ( опсег_критеријума2 = критеријум2 , максимални_опсег )))}

    Или рукујте више критеријума користећи операцију множења:

    {=МАКС(ИФ(( опсег_критерија1 = критеријум1 ) * ( опсег_критеријума2 = критеријум2 ), мак_ранге ))}

    Рецимо да имате резултате дечака и девојчица у једној табели и желите да пронађете најдужи скок међу девојчицама у 3. колу. Да бисте то урадили , уносимо први критеријум (женски) у Г1, други критеријум (3) у Г2 и користимо следеће формуле да бисмо одредили максималну вредност:

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

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

    Пошто су обе формуле низа, не заборавите да притиснете Цтрл + Схифт + Ентер да бисте их исправно довршили.

    Као што је приказано на снимку екрана испод, формуле дају исти резултат, тако да је оно што ћете користити ствар вас ваше личне преференције. За мене је формула са Буловом логиком лакша за читање и прављење – омогућава додавање онолико услова колико желите без угнежђења додатних ИФ функција.

    Како ове формуле функционишу

    Прва формула користи две угнежђене ИФ функције за процену два критеријума. У логичком тесту прве ИФ изјаве упоређујемо вредности у колони Пол(Б2:Б16) са критеријумом у Г1 („Женско“). Резултат је низ вредности ТРУЕ и ФАЛСЕ где ТРУЕ представља податке који одговарају критеријуму:

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

    На сличан начин, друга функција ИФ проверава вредности у колони Роунд (Ц2 :Ц16) према критеријуму у Г2.

    За аргумент валуе_иф_труе у другом ИФ наредби, достављамо резултате скока у даљ (Д2:Д16) и на овај начин добијамо ставке који имају ТРУЕ у прва два низа на одговарајућим позицијама (тј. ставке у којима је пол „женски“ а округло 3):

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

    Овај коначни низ иде у функцију МАКС и враћа највећи број.

    Друга формула процењује исте услове у оквиру једног логичког теста, а операција множења функционише као оператор И:

    Када се вредности ТРУЕ и ФАЛСЕ користе у било ком аритметичком операцијом, они се претварају у 1 и 0, респективно. И пошто множење са 0 увек даје нулу, резултујући низ има 1 само када су сви услови ТРУЕ. Овај низ се оцењује у логичком тесту функције ИФ, који враћа удаљености које одговарају елементима 1 (ТРУЕ).

    МАКС ИФ без низа

    Многи корисници Екцел-а, укључујући мене, су имају предрасуде према формулама низа и покушају да их се отарасе где год је то могуће. Срећом, Мицрософт Екцел има неколико функција које природно обрађују низ, а ми можемо да користимо једнутаквих функција, наиме СУМПРОДУЦТ, као нека врста "омотача" око МАКС.

    Генеричка формула МАКС ИФ без низа је следећа:

    =СУМПРОДУЦТ(МАКС(( опсег_критеријума1 = критеријум1 ) * ( опсег_критеријума2 = критеријум2 ) * максимални_опсег ))

    Наравно, можете додати још парова опсег/критеријум ако потребно.

    Да бисмо видели формулу у акцији, користићемо податке из претходног примера. Циљ је да се постигне максимални скок спортисткиње у 3. рунди:

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

    Ова формула се такмичи са нормалним притиском на тастер Ентер и даје исти резултат као формула МАКС ИФ:

    Када боље погледате горњи снимак екрана, можете приметити да неважећи скокови означени са „к“ у претходним примерима сада имају 0 вредности у редовима 3, 11 и 15 , а следећи одељак објашњава зашто.

    Како ова формула функционише

    Као и код формуле МАКС ИФ, процењујемо два критеријума упоређивањем сваке вредности у половима (Б2:Б16) и кругу ( Ц2:Ц16) колоне са критеријумима у ћелијама Г1 и Г2. Резултат су два низа вредности ТРУЕ и ФАЛСЕ. Множењем елемената низа на истим позицијама се претвара ТРУЕ и ФАЛСЕ у 1 и 0, респективно, где 1 представља ставке које испуњавају оба критеријума. Трећи помножени низ садржи резултате скока у даљ (Д2:Д16). И пошто множење са 0 даје нулу, само ставке које имају 1 (ТРУЕ) на одговарајућим позицијамасурвиве:

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

    У случају да мак_ранге садржи било коју текстуалну вредност, операција множења враћа грешку #ВАЛУЕ због које цела формула неће радити.

    Функција МАКС преузима је одавде и враћа највећи број који испуњава наведене услове. Добијени низ који се састоји од једног елемента {4.63} иде у функцију СУМПРОДУЦТ и даје максималан број у ћелији.

    Напомена. Због своје специфичне логике, формула функционише са следећим упозорењима:

    • Опсег у коме тражите највећу вредност мора да садржи само бројеве. Ако постоје текстуалне вредности, #ВАЛУЕ! грешка се враћа.
    • Формула не може да процени услов „није једнако нули“ у негативном скупу података. Да бисте пронашли максималну вредност занемарујући нуле, користите формулу МАКС ИФ или функцију МАКСИФС.

    Екцел формула МАКС ИФ са логиком ОР

    Да бисте пронашли максималну вредност када је било који од наведених услова је испуњено, користите већ познату формулу низа МАКС ИФ са Буловом логиком, али додајте услове уместо да их множите.

    {=МАКС(ИФ(( цритериа_ранге1 = критеријум1 ) + ( опсег_критеријума2 = критеријум2 ), максимални_опсег ))}

    Алтернативно, можете користити следећу формулу без низа :

    =СУМПРОДУЦТ(МАКС((( опсег_критеријума1 = критеријум1 ) + ( опсег_критеријума2 = критеријум2 )) * мак_ранге ))

    Као пример, хајде да вежбамонајбољи резултат у 2. и 3. рунди. Обратите пажњу да је у Екцел језику задатак другачије формулисан: вратите максималну вредност ако је круг 2 или 3.

    Са рундама наведеним у Б2:Б10 , резултати у Ц2:Ц10 и критеријуми у Ф1 и Х1, формула иде овако:

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

    Унесите формулу притиском на комбинацију тастера Цтрл + Схифт + Ентер и добићете овај резултат:

    Максимална вредност са истим условима такође се може наћи коришћењем ове формуле која није низ:

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

    Међутим, у овом случају морамо да заменимо све вредности „к“ у колони Ц нулама јер СУМПРОДУЦТ МАКС ради само са нумеричким подацима:

    Како ове формуле функционишу

    Формула низа функционише на потпуно исти начин као МАКС ИФ са АНД логиком, осим што придружујете критеријуме коришћењем операције сабирања уместо множења. У формулама низа, сабирање функционише као оператор ОР:

    Сабирањем два низа ТРУЕ и ФАЛСЕ (који су резултат провере вредности у Б2:Б10 у односу на критеријуме у Ф1 и Х1) производи се низ од 1 и 0 где 1 представља ставке за које је било који услов ТРУЕ, а 0 представља ставке за које су оба услова ЛАЖНА. Као резултат, функција ИФ "чува" све ставке у Ц2:Ц10 ( валуе_иф_труе ) за које је било који услов ТРУЕ (1); преостале ставке се замењују са ФАЛСЕ јер валуе_иф_фалсе аргумент није наведен.

    Формула која није низ ради на сличан начин. Разлика је у томе што уместо логичког теста ИФ, множите елементе низа 1 и 0 са елементима низа резултата скока у даљ (Ц2:Ц10) на одговарајућим позицијама. Ово поништава ставке које не испуњавају ниједан услов (имају 0 у првом низу) и задржава ставке које испуњавају један од услова (имају 1 у првом низу).

    МАКСИФС – једноставан начин да пронађете највише вредност са условима

    Корисници програма Екцел 2019, 2021 и Екцел 365 немају проблема са припитомљавањем низова да би направили сопствену формулу МАКС ИФ. Ове верзије Екцел-а обезбеђују дуго очекивану МАКСИФС функцију која чини проналажење највеће вредности уз услове за децу.

    У првом аргументу МАКСИФС-а уносите опсег у којем би требало да се пронађе максимална вредност (Д2: Д16 у нашем случају), ау наредним аргументима можете унети до 126 парова опсега/критеријума. На пример:

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

    Као што је приказано на слици испод, ова једноставна формула нема проблема са обрадом опсега који садржи и нумеричке и текстуалне вредности:

    За детаљне информације о овој функцији, погледајте Екцел МАКСИФС функцију са примерима формуле.

    Тако можете пронаћи максималну вредност са условима у Екцел-у. Захваљујем вам на читању и надам се да ћемо вас следеће видети на нашем блогунедељу!

    Вежбање за преузимање

    Примери формуле Екцел МАКС ИФ (.клск датотека)

    Мајкл Браун је посвећен технолошки ентузијаста са страшћу за поједностављење сложених процеса помоћу софтверских алата. Са више од деценије искуства у технолошкој индустрији, усавршио је своје вештине у Мицрософт Екцел-у и Оутлоок-у, као и у Гоогле табеле и документима. Мајклов блог посвећен је дељењу свог знања и стручности са другима, пружајући једноставне савете и упутства за побољшање продуктивности и ефикасности. Без обзира да ли сте искусан професионалац или почетник, Мајклов блог нуди вредне увиде и практичне савете како да на најбољи начин искористите ове основне софтверске алате.