Yleinen kaava
=INDEX(location,XMATCH(0,distance,1))
Yhteenveto
Voit etsiä lähimmän sijainnin etäisyyden mukaan käyttämällä kaavaa, joka perustuu XMATCH-toimintoon ja INDEX-funktioon. Esitetyssä esimerkissä solun E5 kaava on:
=INDEX(location,XMATCH(0,distance,1))
missä sijainti (B5: B12) ja etäisyys (C5: C12) on nimetty alueiksi.
Selitys
Ytimessä tämä kaava on INDEX- ja MATCH-peruskaava. Vanhemman MATCH-toiminnon sijaan käytämme kuitenkin XMATCH-toimintoa, joka tarjoaa tehokkaamman ottelutilan asetuksen:
=INDEX(location,XMATCH(0,distance,1))
Työskentelemällä sisältä ulospäin, käytämme XMATCH-toimintoa lähimmän sijainnin sijainnin löytämiseen:
XMATCH(0,distance,1) // find row nearest zero
Teemme sen asettamalla hakuarvoksi nollan (0), hakutaulukon etäisyydelle (C5: C12) ja ottelutilan arvoksi 1.
Vastaavuustilan arvo 1 kertoo XMATCH: lle löytää tarkan vastaavuuden tai seuraavaksi suurimman arvon. Koska hakuarvo on annettu nollana (0), XMATCH löytää ensimmäisen etäisyyden suuremmaksi kuin nolla. XMATCHin mukava etu - mikä erottaa sen MATCHista - onko se, että hakutaulukko ei ole lajiteltava. Tilauksesta riippumatta MATCH palauttaa ensimmäisen tarkan vastaavuuden tai seuraavaksi suurimman arvon.
Esimerkissä XMATCH palauttaa arvon 5, koska pienin etäisyys on 7 (sijainti G), joka näkyy luettelossa viidenneksi. Kaava ratkaisee:
=INDEX(location,5) // returns "G"
ja INDEX palauttaa viides kohde nimetty alue sijainti (B5: B12), joka on "G".
Huomaa: Tasapuolella tasan, XMATCH palauttaa ensimmäisen vastaavan arvon.
Hanki etäisyys
Kaava lähimmän sijainnin todellisen etäisyyden palauttamiseksi on melkein sama. Sen sijaan, että annat INDEX: lle sijaintinimet, annamme INDEX: lle etäisyydet. F5: n kaava on:
=INDEX(distance,XMATCH(0,distance,1)) // returns distance
XMATCH palauttaa saman tuloksen kuin yllä (5) ja INDEX palauttaa 7.