Ejemplo practico con la funcion BUSCARV.
BUSCARV es una función de referencia, que nos permite buscar un valor en vertical, y, devolver la columna que le especifiquemos.
La sintaxis de esta función es valor buscado, dentro de la matriz que especifiquemos, numero de columna a devolver, y, tipo de coincidencia.
Este tipo de coincidencia, puede ser una coincidencia exacta, quiere decir que debe de encontrar el valor que le especifiquemos, o,, coincidencia aproximada, que nos devolverá el valor mas cercano al buscado.
En este articulo, vamos a ver un ejemplo un poco avanzado.
Tenemos el siguiente modelo, donde tenemos un código que pertenece a un nombre, apeelido1, apellido2,, y, un teléfono.
Vemos que tenemos dos modelos..
Debemos de introducir un código, y, nos debe de devolver la columna que le indiquemos, que puede ser:
- Nombre
- Apellido1
- Apellido2
- Teléfono
Pero, antes de seleccionar los datos, en la celda N3, copio los códigos del primer y segundo modelo.
Clic en Aceptar.
Ya `puedo seleccionar un código.
Lo siguiente es crear otra validación pero para elegir una columna.
Seguimos los mismos pasos diados anteriormente, pero seleccionamos las columnas.
Con esto, ya tengo las dos validaciones creadas.
¿En que va a consistir el ejercicio?
Vamos a seleccionar un código, y, nos debe de devolver la columna que le especifiquemos.
Pero, he de darme cuenta que tengo dos modelos, esto quiere decir que el código a buscar, puede estar en el primer modelo, o,, en el segundo modelo.
Voy a hacerlo para que el codito que introduzca, lo busque en él primer modelo.
Selecciono un código, y, una columna.
He seleccionado el código 1060, y, la columna Apellido1.
Ahora, debajo de Apellido1, debe de aparecer el apellido1 del código 1060.
Pues, voy a hacer uso de la función BUSCARV, porque el valor que tengo que buscar esta en vertical.
Escribo el signo igual, y, la función BUSCARV.
Lo siguiente que he de hacer es especificar que columna quiero que me devuelva.
He seleccionado apellido1, pero el argumento indicador de columnas debe de ser un numero, no un texto.
¿Cómo puedo convertir el valor seleccionado en un número?
Hay una función que se llama COINCIDIR, que nos devuelve la posición que ocupar un elemento dentro de un rango.
Esta función tiene tres argumentos, que es valor buscado, donde buscarlo, y, tipo de coincidencia.
Pues, voy a usar esta función para conseguir la posición del elemento buscado, que es apellido1, y, es el argumento indicador de columnas de la función BUSCARV.
Como ultimo argumento es tipo de coincidencia, que en este caso, debe de ser exacta, que es el valor Falso.
Acepto.
Si selecciono el código 1060, como resultado obtengo Jimenez, que es el primer apellido del código 1060.
Pero, ¿Qué ocurre si el código que introduzco esta en el segundo modelo?
Me devolverá un error, por ejemplo, voy a introducir el código 212o.
El error que me devuelve es correcto, quiere decir que no ha encontrado él valor especificado.
¿Cómo lo puedo solventar?
Hay una función llamada SI.ERROR.
Esta función tiene dos argumentos, el primer argumento es expresión a evaluar, y, el segundo argumento es lo que debe de pasar si dicha expresión devuelve un error.
El primer argumento de SI.ERROR va a ser la expresión anterior.
=SI.ERROR(BUSCARV(B13;B4:F9;COINCIDIR(C12;B3:F3;0);FALSO)
El segundo argumento, que es la accion que tiene que realizar si expresión devuelve un error, pues ponemos la expresión anterior, pero cambiamos él rango de búsqueda, que es el del segundo modelo.
=SI.ERROR(BUSCARV(B13;B4:F9;COINCIDIR(C12;B3:F3;0);FALSO);BUSCARV(B13;H4:L9;COINCIDIR(C12;B3:F3;0);FALSO))
Acepto.
Y, me devuelve el apellido1 pero buscado en el segundo modelo de datos.
Si, cambiamos código, y, numero de columna a devolver, tendremos el valor correcto.
Comentarios
Publicar un comentario