Excel vzorec: Najbližšie umiestnenie s XMATCH -

Obsah

Všeobecný vzorec

=INDEX(location,XMATCH(0,distance,1))

Zhrnutie

Na vyhľadanie najbližšej polohy podľa vzdialenosti môžete použiť vzorec založený na funkcii XMATCH s funkciou INDEX. V zobrazenom príklade je vzorec v bunke E5:

=INDEX(location,XMATCH(0,distance,1))

kde umiestnenie (B5: B12) a vzdialenosť (C5: C12) sú pomenované rozsahy.

Vysvetlenie

V podstate je tento vzorec základným vzorcom INDEX a MATCH. Namiesto použitia staršej funkcie MATCH však používame funkciu XMATCH, ktorá poskytuje výkonnejšie nastavenie režimu zhody:

=INDEX(location,XMATCH(0,distance,1))

Pri práci zvnútra používame funkciu XMATCH na vyhľadanie polohy najbližšieho umiestnenia:

XMATCH(0,distance,1) // find row nearest zero

Robíme to tak, že nastavíme vyhľadávaciu hodnotu na nulu (0), vyhľadávací pole na vzdialenosť (C5: C12) a režim zhody na 1.

Hodnota režimu zhody 1 povie XMATCH, aby našiel presnú zhodu alebo nasledujúcu najväčšiu hodnotu. Pretože vyhľadávacia hodnota je poskytovaná ako nula (0), XMATCH nájde prvú vzdialenosť väčšiu ako nula. Príjemnou výhodou XMATCH - čo ho odlišuje od MATCH - je to, že nie je zoradené vyhľadávacie pole. Bez ohľadu na objednávku vráti MATCH prvú presnú zhodu alebo ďalšiu najväčšiu hodnotu.

V príklade funkcia XMATCH vráti hodnotu 5, pretože najmenšia vzdialenosť je 7 (poloha G), ktorá sa v zozname zobrazuje ako piata. Vzorec je rozdelený na:

=INDEX(location,5) // returns "G"

a INDEX vráti piatu položku z pomenovaného umiestnenia rozsahu (B5: B12), čo je „G“.

Poznámka: pri vyrovnanej remíze vráti XMATCH prvý zápas so zhodnými hodnotami.

Získajte vzdialenosť

Vzorec na vrátenie skutočnej vzdialenosti od najbližšieho miesta je takmer rovnaký. Namiesto toho, aby sme dali INDEXU názvy miest, dáme INDEXU vzdialenosti. Vzorec v F5 je:

=INDEX(distance,XMATCH(0,distance,1)) // returns distance

XMATCH vráti rovnaký výsledok ako vyššie (5) a INDEX vráti 7.

Zaujímavé články...