![](https://cdn.wiki-base.com/2494370/excel_formula_nearest_location_with_xmatch__2.png.webp)
Генеричка формула
=INDEX(location,XMATCH(0,distance,1))
Резиме
Да бисте лоцирали најближу локацију на даљину, можете користити формулу засновану на функцији КСМАТЦХ са функцијом ИНДЕКС. У приказаном примеру, формула у ћелији Е5 је:
=INDEX(location,XMATCH(0,distance,1))
где су локација (Б5: Б12) и удаљеност (Ц5: Ц12) именовани опсези.
Објашњење
У основи, ова формула је основна формула ИНДЕКСА и МАТЦХ-а. Међутим, уместо да користимо старију функцију МАТЦХ, користимо КСМАТЦХ функцију која пружа снажније подешавање режима подударања:
=INDEX(location,XMATCH(0,distance,1))
Радећи изнутра према унутра, користимо функцију КСМАТЦХ да пронађемо положај најближе локације:
XMATCH(0,distance,1) // find row nearest zero
То радимо постављањем вредности претраживања на нулу (0), низа претраживања на удаљеност (Ц5: Ц12) и начина подударања на 1.
Вредност начина подударања 1 говори КСМАТЦХ-у да пронађе тачно подударање или следећу највећу вредност. Будући да је вредност претраживања нула (0), КСМАТЦХ ће пронаћи прву удаљеност већу од нуле. Лепа предност КСМАТЦХ-а - оно што га разликује од МАТЦХ-а је што се претраживачки низ не сортира. Без обзира на редослед, МАТЦХ ће вратити прво тачно подударање или следећу највећу вредност.
У примеру, КСМАТЦХ враћа 5, јер је најмања удаљеност 7 (локација Г), која је пета на листи. Формула се решава на:
=INDEX(location,5) // returns "G"
и ИНДЕКС враћа пету ставку са именоване локације опсега (Б5: Б12), што је "Г".
Напомена: уједначеним резултатом, КСМАТЦХ ће вратити прво подударање за изједначене вредности.
Нађи удаљеност
Формула за враћање стварне удаљености најближе локације је готово иста. Уместо да ИНДЕКС-у дамо имена локација, ми ИНДЕКСУ додељујемо растојања. Формула у Ф5 је:
=INDEX(distance,XMATCH(0,distance,1)) // returns distance
КСМАТЦХ враћа исти резултат као горе (5), а ИНДЕКС враћа 7.