Екцел

Добијте н -ту утакмицу са ИНДЕКС / МАТЦХ

Get Nth Match With Index Match

Екцел формула: Добијте н -то подударање помоћу ИНДЕКС / МАТЦХОпшта формула | _+_ | Резиме

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





{= INDEX (array, SMALL ( IF (vals=val, ROW (vals)- ROW ( INDEX (vals,1,1))+1),nth))}

Где именовани распони су амтс (Д4: Д11), ид (И3) и ид (Ц4: Ц11).

Имајте на уму да је ово формула низа и мора се унети помоћу Цонтрол + Схифт + Ентер.





Објашњење

У основи, ова формула је једноставно ИНДЕКС формула која преузима вредност у низу на датој позицији. Вредност за н је наведена у колони Х, а сав 'тежак' посао који формула обавља је да схвати који ред треба да преузме вредност, при чему ред одговара 'н -том' подударању.

ИФ функција ради на утврђивању који редови садрже подударање, а СМАЛЛ функција враћа н -ту вредност са те листе. Унутар ИФ -а, логички тест је:



 
{= INDEX (amts, SMALL ( IF (ids=id, ROW (ids)- ROW ( INDEX (ids,1,1))+1),H6))}

што даје овај низ:

како започети нову линију у Екцел ћелији
 
ids=id

Имајте на уму да се идентификације купаца подударају на 1. и 4. позицији, које се приказују као ТРУЕ. Аргумент „вредност ако је тачно“ у ИФ генерише листу релативни бројеви редова са овим изразом:

 
{TRUEFALSEFALSETRUEFALSEFALSEFALSE}

који производи овај низ:

 
 ROW (ids)- ROW ( INDEX (ids,1,1))+1

Овај низ се затим „филтрира“ према резултатима логичког теста, а функција ИФ враћа следећи резултат низа:

 
{1234567}

Имајте на уму да имамо важеће бројеве редова за ред 1 и ред 2.

Овај низ затим обрађује СМАЛЛ, који је конфигурисан да користи вредности у колони Х за враћање 'н -их' вредности. Функција СМАЛЛ аутоматски занемарује логичке вриједности ТРУЕ и ФАЛСЕ у низу. На крају, формуле се своде на:

 
{1FALSEFALSE4FALSEFALSEFALSE}

Грешке при руковању

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

Више критеријума

Да бисте додали више критеријума, користите логичка логика , као објашњено у овом примеру .

Аутор Даве Брунс


^