miércoles, 10 de junio de 2020

EXCEL: Ubicación más cercana con COINCIDIRX

Excel formula: Nearest location with XMATCH

Fórmula genérica

=INDICE(location,COINCIDIRX(0,distance,1))

Explicación

Para localizar la ubicación más cercana por distancia, puede usar una fórmula basada en la función COINCIDIRX con la función INDICE. En el ejemplo que se muestra, la fórmula en la celda E5 es:
=INDICE(location,COINCIDIRX(0,distance,1))
donde ubicación (B5: B12) y distancia (C5: C12) se denominan rangos.

Cómo funciona esta fórmula

En esencia, esta fórmula es una fórmula básica de INDICE y COINCIDIR. Sin embargo, en lugar de utilizar la función COINCIDIR anterior, estamos utilizando la función COINCIDIRX, que proporciona una configuración de modo de coincidencia más potente:
=INDICE(location,COINCIDIRX(0,distance,1))
Trabajando de adentro hacia afuera, estamos utilizando la función COINCIDIRX para encontrar la posición de la ubicación más cercana:
COINCIDIRX(0,distance,1) // find row nearest zero
Hacemos eso estableciendo el valor de búsqueda a cero (0), la matriz de búsqueda a la distancia (C5: C12) y el modo de coincidencia a 1.
Un valor de modo de coincidencia de 1 le dice a COINCIDIRX que encuentre una coincidencia exacta o el siguiente valor más grande. Como el valor de búsqueda se proporciona como cero (0), COINCIDIRX encontrará la primera distancia mayor que cero. Un buen beneficio de COINCIDIRX, lo que lo distingue de COINCIDIR, es que no es la matriz de búsqueda que se debe ordenar. Independientemente del orden, COINCIDIR devolverá la primera coincidencia exacta o el siguiente valor más grande.
En el ejemplo, COINCIDIRX devuelve 5, ya que la distancia más pequeña es 7 (ubicación G), que aparece en quinto lugar en la lista. La fórmula resuelve:
=INDICE(location,5) // returns "G"
e INDICE devuelve el quinto elemento desde la ubicación del rango con nombre (B5: B12), que es "G".
Nota: en un empate, COINCIDIRX devolverá la primera coincidencia para los valores empatados.

Obtener distancia

La fórmula para devolver la distancia real de la ubicación más cercana es casi la misma. En lugar de dar a INDICE los nombres de las ubicaciones, le damos a INDICE las distancias. La fórmula en F5 es:
=INDICE(distance,COINCIDIRX(0,distance,1)) // returns distance
COINCIDIRX devuelve el mismo resultado que el anterior (5), e INDICE devuelve 7.

Comentarios en Facebook


0 comentarios:

Copyright © 2021 TRUJILLOSOFT