
Generisk formel
=INDEX(location,XMATCH(0,distance,1))
Sammendrag
For å finne nærmeste sted etter avstand, kan du bruke en formel basert på XMATCH-funksjonen med INDEX-funksjonen. I eksemplet vist er formelen i celle E5:
=INDEX(location,XMATCH(0,distance,1))
der sted (B5: B12) og avstand (C5: C12) er kalt områder.
Forklaring
I kjernen er denne formelen en grunnleggende INDEKS- og MATCH-formel. Imidlertid, i stedet for å bruke den eldre MATCH-funksjonen, bruker vi XMATCH-funksjonen, som gir en kraftigere innstilling for samsvarsmodus:
=INDEX(location,XMATCH(0,distance,1))
Når vi jobber fra innsiden og ut, bruker vi XMATCH-funksjonen for å finne posisjonen til nærmeste sted:
XMATCH(0,distance,1) // find row nearest zero
Vi gjør det ved å sette oppslagsverdi til null (0), oppslagsmatrise til avstanden (C5: C12) og matche modus til 1.
En samsvarsmodusverdi på 1 forteller XMATCH å finne et eksakt samsvar eller den nest største verdien. Siden oppslagsverdi er gitt som null (0), vil XMATCH finne den første avstanden større enn null. En fin fordel med XMATCH - hva som skiller den fra MATCH - er at det ikke blir oppslagsmatrisen som skal sorteres. Uavhengig av rekkefølge vil MATCH returnere det første eksakte samsvaret eller den nest største verdien.
I eksemplet returnerer XMATCH 5, siden den minste avstanden er 7 (plassering G), som vises femte i listen. Formelen løser seg å:
=INDEX(location,5) // returns "G"
og INDEX returnerer det femte elementet fra den navngitte området plassering (B5: B12), som er "G".
Merk: XMATCH returnerer den første kampen for uavgjorte verdier på et jevnt nivå.
Få avstand
Formelen for å returnere den faktiske avstanden til nærmeste sted er nesten den samme. I stedet for å gi INDEX stedsnavn, gir vi INDEX avstandene. Formelen i F5 er:
=INDEX(distance,XMATCH(0,distance,1)) // returns distance
XMATCH returnerer det samme resultatet som ovenfor (5), og INDEX returnerer 7.