
Fórmula genérica
=VLOOKUP(A1,CHOOSE((1,2),range2,range1),2,0)
Resumen
Para usar BUSCARV para realizar una búsqueda a la izquierda, puede usar la función ELEGIR para reordenar la tabla de búsqueda. En el ejemplo que se muestra, la fórmula en F5 es:
=VLOOKUP(E5,CHOOSE((1,2),score,rating),2,0)
donde la puntuación (C5: C9) y la puntuación (B5: B9) se denominan rangos.
Explicación
Una de las limitaciones clave de la función VLOOKUP es que solo puede buscar valores a la derecha. En otras palabras, la columna que contiene los valores de búsqueda debe ubicarse a la izquierda de los valores que desea recuperar con BUSCARV. No hay forma de anular este comportamiento, ya que está integrado en la función. Como resultado, con la configuración normal, no hay forma de usar BUSCARV para buscar una calificación en la columna B basada en una puntuación en la columna C.
Una solución alternativa es reestructurar la tabla de búsqueda en sí y mover la columna de búsqueda a la izquierda de los valores de búsqueda. Ese es el enfoque adoptado en este ejemplo, que utiliza la función ELEGIR calificación inversa y puntuación como esta:
CHOOSE((1,2),score,rating)
Normalmente, ELEGIR se usa con un solo número de índice como primer argumento, y los argumentos restantes son los valores para elegir. Sin embargo, aquí le damos a elegir una constante de matriz para el número de índice que contiene dos números: (1,2). Esencialmente, estamos pidiendo elegir tanto para el primer como para el segundo valor.
Los valores se proporcionan como los dos rangos nombrados en el ejemplo: puntuación y calificación. Sin embargo, tenga en cuenta que proporcionamos estos rangos en orden inverso. La función ELEGIR selecciona ambos rangos en el orden proporcionado y devuelve el resultado como una única matriz como esta:
(5,"Excellent";4,"Good";3,"Average";2,"Poor";1,"Terrible")
CHOOSE devuelve esta matriz directamente a BUSCARV como argumento de matriz de tabla. En otras palabras, CHOOSE está entregando una tabla de búsqueda como esta para VLOOKUP:
Usando el valor de búsqueda en E5, BUSCARV localiza una coincidencia dentro de la tabla recién creada y devuelve un resultado de la segunda columna.
Reordenando con la constante de matriz
En el ejemplo que se muestra, estamos reordenando la tabla de búsqueda invirtiendo "calificación" y "puntuación" dentro de la función elegida. Sin embargo, podríamos usar la constante de matriz para reordenar así:
CHOOSE((2,1),rating,score)
El resultado es exactamente el mismo.
Con INDICE y MATCH
Si bien el ejemplo anterior funciona bien, no es ideal. Por un lado, la mayoría de los usuarios promedio no entenderán cómo funciona la fórmula. Una solución más natural es INDICE y MATCH. Aquí está la fórmula equivalente:
=INDEX(rating,MATCH(E5,score,0))
De hecho, este es un buen ejemplo de cómo INDEX y MATCH son más flexibles que VLOOKUP.