Cómo usar BUSCARV hacia la izquierda
Estoy seguro de que siempre que has buscado información sobre BUSCARV, has encontrado artículos que dicen que es imposible que la función devuelva un valor que se encuentre a la izquierda de la columna de búsqueda.
Y también estoy seguro de que cuando has creído encontrar uno, al hacer clic en el enlace, has comprobado que no te decían la verdad porque utilizaban las funciones INDICE + COINCIDIR (u otros cientos de combinaciones posibles).
Pues eso se acabó.
Hoy te mostraré una forma de utilizar BUSCARV que es capaz de devolver datos situados a la izquierda de la columna de búsqueda.
¡¡Con lo fácil que sería poder introducir números negativos en el argumento Columna de búsqueda!!
Bueno, vamos allá:
Aunque la protagonista de la fórmula es BUSCARV, me voy a ayudar también de otra útil función: ELEGIR.
En el siguiente listado aparecen los datos de una serie de personas dispuestos de esta forma:
Como ves, la columna ID está situada a la derecha del resto de datos.
Voy a utilizar BUSCARV para buscar un número en la columna ID y que me devuelva cualquiera de los otros datos. Como no es posible utilizar la versión simple de BUSCARV para buscar datos hacia la izquierda, voy a utilizar ELEGIR para invertir el orden de las columnas.
La fórmula final que utilizaré para buscar el ID para que devuelva el nombre de la persona será:
=BUSCARV($H$3;ELEGIR({2\1};$A$2:$A$78;$E$2:$E$78);2;0)
- Dato a buscar: Es el dato que quieres buscar y desde el cual se comenzará a contar el número de columna de búsqueda.
- Se invierte el orden de las columnas: Aquí está la clave de la fórmula. La matriz (encerrada entre llaves) le dice al resto de argumentos de la función ELEGIR, cuál va en primer lugar y cuál en segundo.
- Primera columna y segunda columna: Son rangos de celdas. En la primera se encuentra el dato que se va a devolver y en la segunda el dato buscado.
- Columna de búsqueda: Es el número de columna donde se encuentra el dato a devolver.
- Ordenado: Para hacer una búsqueda exacta o aproximada.
Como te vas a dar cuenta ahora, la columna de búsqueda siempre va a ser 2, ya que solo hay dos columnas que intervienen en la fórmula (la de búsqueda y la de resultado.
Para verlo más claro, te pongo otro ejemplo:
¿Cómo sería la fórmula si quisieras buscar la dirección de una de las personas sabiendo su ID?
Únicamente tendrías que sustituir el rango de la primera columna.
=BUSCARV($H$3;ELEGIR({2\1};$B$1:$B$77;$E$2:$E$78);2;0)
La única diferencia que existe sobre la fórmula anterior es la referencia a la columna de resultados. Tanto la columna de búsqueda como el número de columna sigue siendo el mismo.
Para practicar o ver cómo he creado la fórmula, descarga el ejemplo que he utilizado:
Puedes ver otros trucos como este en mi manual BUSCARV y otras funciones de búsqueda.
¿Qué te parece? Comparte si te ha gustado.
Muy buen tip nunca pensé que se podría hacer este tipo de búsqueda
Excelente, muy interesante, definitivamente Excel es increible
Es un truco que descubrí hace poco y que ahora utilizo mucho.
Muy bueno, gracias por compartir estos descubrimientos..
Como siempre, muy interesante tu publicación!
muy interesante , realmente intersante, este tipo de apuntes. me encantan , pues aparte de ser de gran ayuda, me abren posiblidades en otras direcciones ……GRACIAS
¡Sorprendente, Excel es una caja de sorpresas, muchísimas gracias Sergio por compartir!
Excelente aportacion, saludos
Interesante como siempre tus publicaciones
Super…. gracias Sergio.
La única novedad es que en la práctica el se cambia por una , (coma):
=BUSCARV($G$5;ELEGIR({21};$B$2:$B$78;$D$2:$D$78);2;0) -> No funciona
=BUSCARV($G$5;ELEGIR({2,1};$B$2:$B$78;$D$2:$D$78);2;0) -> Funciona perfecto
Super, asi si me sirvio
Gracias!
muy buen aporte, no me funcionaba por ese detalle
Muchas gracias por el aporte
Excelente aporte, gracias a tu aporte resolví el error que arrojaba. La versión 2019 de office no acepta el {2\1} , si no el {2,1} – Gracias
Hola Clearc!
Me alegra que te haya servido. En cuanto a la matriz que indicas, la forma de introducirla en la fórmula depende de la configuración de teclado que tengas. Las dos formas son válidas. La que tiene la contrabarra corresponde a la configuración regional “Español (España)” mientras que la coma corresponde a “Español (latinoamericano)”.
…. ó ; (punto y coma) según sea la configuración de la máquina.
Gracias a Sergio y gracias a ti, a preguntar que había que sustituir para los que en lugar de (;) usamos solo (,) iba y me dio por leer los comentarios y ya me función usando (;) en lugar () en la fórmula, muy agradecido a ambos.
Eso es, miltinho, el usar punto y coma o coma, depende de la configuración del idioma.
Excelente, este era un problema diario, Gracias
excelente aporte gracias Sergio, bendiciones.
Excelente idea
la boy a llevar acabo.
Gusto en saludarte
Danilo
Otra forma es utilizar el índice pero es más compleja, usaré elegir.
Excelente truco lo empezare a utilizar
Excelente!!!!…me ahorró una hoja donde habia invertido las columnas para realizar la busqueda!!!…graciaas!!!
En la versión de 2010, me funciono de la siguiente manera
Usando comas(,) en lugar de puno y como (;)
=BUSCARV(B4,ELEGIR({2,1},J10:J12,I10:I12),2,0)
Excelente aportación.
MUCHAS GRACIAS.
Camilo, el separador de argumentos depende normalmente de la configuración regional que tenga tu equipo. En España se utiliza el punto y coma en todas las versiones de Excel y en México se utiliza la coma también en todas las versiones.
Excelente. Muy buen aporte!
Hola Maestro,
Una pregunta,
Busco un a formula que me indique en que columna se encuentra un determinado valor, en caso de encontrarlo pasar toda la información a la última columna vacia,
Gracias
José, te recomiendo entrar en el foro de ayudaexcel y plantear allí la consulta. Además, puedes subir un ejemplo de tu libro para que podamos ayudarte mejor.
Excelente aporte muchas gracias!
Saludos desde Nuevo León ,Mexico
Excelente aporte, hace tiempo tenía dificultades para buscar datos a la izquierda.
Muchas Gracias…!
gracias, Saludos desde Perú.
buen día. quisiera saber si se puede combinar el buscarv y elegir si los datos están en hoja diferente, me explico la base de datos esta en una hoja y a donde deseo llevar los datos están en otra hoja. si es posible me podrías dar una mano, ya que con lo que explicas solo es posible si todos los datos están en la misma hoja
Previamente, ve al Administrador de nombres (dentro de Fórmulas) y da un nombre a cada rango que tengas que utilizar. Al escribir las funciones, en lugar del rango (que no puedes utilizar porque está en otra hoja) usa el nombre que le has dado.
Hola que tal Excelente, muchas gracias por compartir, que útil fue tu enseñanza. Gracias.
Hola… que nota..
gracias porque no creía posible realizar una formula así
me encanto…
Excelente. Me salvaste la vida.
Ahora estoy en el dilema, de que cuando no haya dato que buscar, la formula no arroje nada, ya que el dato queda ahí una vez que borro el numero a buscar.
Estoy haciendo un formulario de consulta, donde al escribir un numero en la celda C1 (por ejemplo) arroje información relacionada, pero al borrarlo, algunos datos quedan ahí hasta que un nuevo numero se consulte.
Alguna idea de cual debe ser la condición?
Hola, Rick!!
Puedes utilizar la función SI.ERROR para gestionarlo.
Hola!! El archivo está genial y me ha servido de ayuda.
Te quería preguntar cómo podría copiar la fórmula de la parte de la derecha para que vaya buscando fila tras fila… por ejemplo g3,g4g5
Gracias
Claro que es posible. Solamente debes fijarte en el tipo de referencias que utilizas en la fórmula (relativas o absolutas).
Buen dia,
La hice, pero me arrojo otro valor, porque sera?
La busqueda fue hecha en una hoja diferente
saludos
Jesús, puede deberse a varias causas, pero seguramente sea porque las referencias que utilizas no son correctas.
Maestro Sergio, buenos días !!
Es muy buena la solución brindada y la agradezco de corazón, solo me permito comentar que no me funcionó a mí buscando en una lista en otro libro, pero al copiar esa lista en el libro en el cual estoy trabajando funciono perfecto !!
Gracias !!
Hola, Víctor: ¿cómo introduces la referencia al libro? Recuerda que debes hacerlo con la ruta completa al archivo…
Muchas Gracias.
Gracias Sergio por la ayuda:..
Sera posible nos podrías compartir un cuadro de comparativo de precios???
Hola, Francisco,
Si me dices la forma en la que quieres comparar los precios, quizá pueda crear la tabla que indicas.
gracias por compartir tus descubrimientos. saludos
Excelente, Sergio.
Gracias Sergio, muy interesante esa forma de buscar, agradecido por tu aporte
Saludos
Muchas gracias Sergio. Interesantísimo aporte
Una pregunta de novato… Las llaves {} qué función tienen por si mismas? No entiendo la lógica {1/2} = invertir el orden de las columnas.
Un saludo
Hola Javier!
Las llaves crean una matriz de datos. El separador entre los datos (en este caso la barra inclinada) significa que son columnas diferentes.
Excelente Sergio, muchas gracias.
Saludos.
Hola, excelente aporte, pero a mi no me funciona para buscar de una hoja a otra, ojalá tengas la solución…
Hola Joel!
Aunque el artículo se refiere a datos que se encuentran en la misma hoja, también sirve para otras hojas (acabo de probarlo).
Tendrías que utilizar una fórmula como esta:
=BUSCARV(3;ELEGIR({2\1};Hoja1!A1:A6;Hoja1!B1:B6);2;0)
Copia esta misma fórmula en tu libro y sustituye las referencias señalándolas con el ratón (así evitas introducir errores).
Espero que te ayude!
En mi caso, tengo que buscar valores que se encuentran en otra hoja (mismo libro) pero estos valores se encuentran dentro de un rango, pero EN DIFEENTES COLUMNAS… y no está funcionando.
O sea, tego que buscar un valor X, en el rango HOJA2!$G$1:$G$999;HOJA2!$V$1:$V$999 y conseguir obtener el valor de la columna G (de la misma HOJA2) en la HOJA1… pero el valor buscado, puede estar en las columnas P, R,T o V!
No sé si soy muy claro para explicarlo, pero agradeceré mucho tu ayuda!
Leo, cuando el valor no se encuentra en una columna, Excel devuelve el valor #N/A, así que puedes aprovechar esto para decirle a Excel mediante funciones SI anidadas, que si la búsqueda en una columna, da este mensaje, que busque en la siguiente…
Muy agradecido, como bien dice en su introducción a este articulo, despues de buscar “buscar a la izda en Excel”, los enlaces te llevan a otras funciones,
por primera vez con este articulo he podido comprobar como la función “BUSCARV”, ES UNA DE LAS MAS IMPORTANTES, REPITO GRACIAS.
Excelente muchas gracias, nos ahorramos la función coincidir, solo es tener claro las columnas… felicitaciones por compartir esta formula DIOS nos bendiga a Todos.
Buenas tarde,
Habrá o existira alguna formula para separar nombres y apellido? Y teniendo en cuenta que pueden haber nombres o apellidos compuestos (de, del, etc)
Hola Rafael!
Si nombres y apellidos están separados por una coma, sí es posible. En caso contrario, Excel no puede determinar si una palabra se considera nombre o apellido…
Muy Bien. Gracias…
Muchas gracias por tu aporte!!!! Me ayudó bastante.
Con la función BUSCARV, ¿se puede devolver mas de una columna?
Hola Osvaldo!
Aquí tienes un ejemplo de cómo devolver dos o más columnas con BUSCARV.
Espero que te sirva.
No funciona
¿Puedes darme más detalles para averiguar qué ocurre?
Hola Sergio, segui todas las instrucciones pero me termina diciendo que el intervalo esta fuera de los limites. Aclaro que lo estoy haciendo en Google spreadsheet con la funcion importrange ya que levanta la info desde otra hoja de Google. Te copio exactamente la formula a ver si encontras que estoy haciendo mal:
=VLOOKUP($A2;choose({2\1};importrange(“https://docs.google.com/spreadsheets/d/1VbKAwaQEk87TDFsfK6Lw9B7KUEPRzn-pp_DqCsZO9XI/edit#gid=2117770687″;”Respuestas de formulario 1!A:A”);importrange(“https://docs.google.com/spreadsheets/d/1VbKAwaQEk87TDFsfK6Lw9B7KUEPRzn-pp_DqCsZO9XI/edit#gid=2117770687″;”Respuestas de formulario 1!B:B”));2;FALSE)
Desde ya muchas gracias
Hola Mariano!
Creo que en Google Spreadsheets las matrices se introducen de forma diferente. No estoy muy familiarizado con esta hoja de cálculo.
Quizá este artículo te ayude.
Sergio, excelente Tip!!! Creo que sera de mucha ayuda…
fijate que en la formula de la direccion trae la fila 1 y eso genera un dato incorrecto (Avenida Monte de Valdelatas) cuando l ocorrecto es Nutria.
Muchas gracias!!!
saludos
Gracias profesor Sergio por sus aportes al conocimiento, excelentes todas sus publicaciones.
Buenos días.
Muy buen aporte me sirvió, sin embargo la dirección debería ser Nutria..
Excelente explicación.. sencilla y muy útil. gracias
Hola, si yo tengo multiples datos en una celda, seprados por , (coma) como puedo realizer un vlookup?
Ejemplo
Celda A1 Datos C1,C3, C4,R2, R22
Celda B1 Datos “Ensamble”
Como realize un Vlookup (buscarV) que al buscar C1 me arroje Ensamble o C4 me arroje Ensamble
Hola Agustín!
Una solución es utilizar comodines. Al hacer tu búsqueda de C1 en cualquier parte de la celda, introduce “*C1*” como criterio de búsqueda.
me has salvado, para prepararme pa un examen
Gracias hermano, muy buen aporte, me has ayudado mucho, solo quiero comentar que en algunas versiones de excel en vez de ser {2/1} tiene que ponerse {2,1}, si no, no te deja hacer la formula.
Saludos.
Hola Héctor!
En realidad no tiene que ver con la versión sino con la configuración regional que tengas en tu equipo. En España se suele utilizar el punto y coma (;) como separador de argumentos. En algunos países de LATAM, el separador es la coma(,). Por ese motivo la disposición de las matrices se define con caracteres diferentes.
Solo pasaba para decirte ¡Gracias!
Espero que estés bien.