BUSCARV con matriz de búsqueda dinámica
Cuando queremos traer un dato con BUSCARV y tenemos organizada la información en diferentes tablas, necesitamos que de alguna forma la función detecte en qué tabla debe buscar el dato.
En este video-tutorial te explico como realizar un rango dinámico para la función BUSCARV con la ayudar de función INDIRECTO.
Explicación
En Excel es usual tener la información organizada en diferentes tablas: por ejemplo aquí tenemos los datos de ventas de productos y queremos que al seleccionar la sucursal, busque el valor en la tabla correspondiente y nos arroje las ventas totales.
Fórmula General
=BUSCARV(valor_buscado;INDIRECTO(“tabla_de_busqueda”);columna;0)
En el ejemplo:
=BUSCARV(C3;INDIRECTO(D3);5;0)
Se trata de la función estándar de BUSCARV donde el primer argumento será el producto a buscar y el segundo argumento es la matriz donde buscará ese valor, que con la ayuda de la función INDIRECTO haremos que sea dinámico: es decir que el rango de búsqueda cambie de acuerdo a la sucursal que seleccione en la celda D3.
Para que esta fórmula funcione, primero debemos crear nombres para cada tabla que tiene información.
Así, iremos a la pestaña Fórmulas>Administrador de nombres>Nuevo
En la ventana emergente escribiremos en la sección “Nombre” el nombre de la primer tabla o sucursal: en nuestro ejemplo Castilla y en la sección “Se refiere a“ seleccionaremos la tabla con información de A8:E14.
Así creamos el primer nombre. Esto hay que repetirlo para las 3 tablas con información de las sucursales restantes.
Ahora bien, en la fórmula BUSCARV, la matriz de búsqueda la va a proporcionar la función INDIRECTO cuyo argumento será la celda donde aparece la sucursal seleccionada, es decir la celda D3.
La función INDIRECTO devolverá el rango de valores a los que se refiere la celda D3. Por ejemplo, si en la celda D3 la sucursal es Castilla traerá la tabla de datos asociada a ese nombre: que es el rango A8:E14.
Entonces la función BUSCARV quedaría:
=BUSCARV(C3;A8:E14;5;0)
Si en la celda D3 la sucursal dice Murcia traerá la tabla de datos asociada a ese nombre: que es el rango G8:KE14.
Entonces la función BUSCARV quedaría gracias a la función INDIRECTO de esta manera:
=BUSCARV(C3;G8:KE14;5;0)
De esta forma podemos hacer rangos de búsqueda dinámicos en BUSCARV con INDIRECTO.
Espero que te haya servido.
¡Saludos!
Cecilia - www.planillaexcel.com
PD: si quieres aprender más de Excel, dicto cursos online desde el nivel básico a avanzado.
Haz click aquí para ver los cursos.