Devolver valores a la izquierda de una VLOOKUP (Microsoft Excel)
Sam usa la función BUSCARV con frecuencia. Es muy útil, pero hay una limitación importante: la búsqueda solo puede hacer referencia a las columnas de la derecha. Esto significa que Sam no puede usar, como tercer parámetro de BUSCARV, un valor negativo para hacer referencia a una columna a la izquierda. Se pregunta si hay una forma de evitar esta limitación.
En realidad, hay tres formas de evitar esta limitación: reestructurar, usar ÍNDICE y ELEGIR. Examinaré cada uno de estos métodos, uno a uno.
Reestructurando su contenido
Este puede ser el enfoque menos deseable, pero lo sacaré del camino desde el principio. Si encuentra que necesita devolver valores a la izquierda de su búsqueda con bastante frecuencia, podría considerar reestructurar su hoja de trabajo para que los valores estén a la derecha de su fórmula.
Un método alternativo de reestructuración es utilizar una columna auxiliar a la derecha de su fórmula. Esta columna auxiliar simplemente necesita referirse a los valores de retorno reales. Por ejemplo, si sus valores devueltos están en la columna A y su fórmula está en la columna E, puede agregar una columna auxiliar a J.
La fórmula en J1 sería simplemente = A1. Cópielo y luego use la columna J como sus valores de retorno en las fórmulas en la columna E.
Utilizando INDEX y MATCH
Quizás el enfoque más común del problema que Sam está experimentando es usar una combinación de las funciones INDICE y COINCIDIR en lugar de BUSCARV. Por ejemplo, digamos que tiene la siguiente fórmula VLOOKUP:
=VLOOKUP(G1,$C$1:$E$100,3,TRUE)
Esto busca en el rango C1: C100 el valor en G1 (como una coincidencia aproximada) y obtiene el valor correspondiente en E1: E100. Esta fórmula es equivalente a la siguiente fórmula:
=INDEX($E$1:$E$100,MATCH(G1,$C$1:$C$100,1))
Entonces, si desea obtener una columna a la izquierda de su columna de búsqueda (por ejemplo, A1: A100), puede usar algo como:
=INDEX($A$1:$A$100,MATCH(G1,$C$1:$C$100,1))
Si desea que la búsqueda devuelva una coincidencia exacta, todo lo que necesita hacer es cambiar el 1 final en la función COINCIDIR a un 0, así:
=INDEX($A$1:$A$100,MATCH(G1,$C$1:$C$100,0))
Usando VLOOKUP y CHOOSE
Si realmente desea continuar usando la función BUSCARV en su fórmula, puede «engañarla» para que recupere los valores de la izquierda al incluir también la función ELEGIR.
Para ilustrar esto, supongamos que sus valores de búsqueda están en la columna D y los valores de retorno están en la columna A. En la celda G1 está su valor de búsqueda. La siguiente fórmula devolverá los valores adecuados:
=VLOOKUP(G1,CHOOSE({1,2},$D$1:$D$100,$A$1:$A$100),2,FALSE)
La función ELEGIR devuelve una matriz constituida por las celdas indicadas.
La función BUSCARV devuelve un valor de la segunda columna de esa matriz, que resulta ser la columna A, a la izquierda de la columna D.
ExcelTips es su fuente de formación rentable en Microsoft Excel.
Este consejo (13608) se aplica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 y Excel en Office 365.