Búsqueda de Datos

Buenos Días, les cuento que tengo una base de datos con varias columnas, pero necesito crear un sistema que me permita trabajar más fácilmente con las 4 primeras, la base tiene el siguiente esquema
Columna A: Código Empresa.
Columna B: Código Empleado.
Columna C: Nombre Empleado.
Columna D: RUT Empleado.
Esta base trabaja con 4 empresas diferentes y cientos de trabajadores por cada empresa, lo que necesito es crear un sistema de búsqueda de datos, había pensado en poner en otra hoja por ejemplo, las celdas A1 y A2 para ingresar el cod. De empresa y empleado que busco, y que el resultado de la búsqueda me lo entregue en las celdas B1 y B2, y si no encuentra datos que devuelva “No Encontrado”. Anteriormente un experto me mando un par de funciones matriciales combinando INDICE y COINCIDIR, en principio funcionaba, pero la base tenia que estar ordenada y la formula debía tener el principio y el fin de la matriz o si había un dato en blanco esta dejaba de funcionar. La dificultad es que la base se actualiza a diario, borra el personal finiquitado e incorpora al personal nuevo, por esto se va desordenando, ampliando y reduciendo periódicamente, por lo que la solución del experto dejaba de funcionar con cada cambio. Había pensado también en adaptar una función BUSCARV, pero la verdad es que no se me ocurre, porque la función primero tiene que buscar el cod. De empresa, filtrar estos datos por así decirlo y luego buscar el cod. De empleado según la empresa para entregar el resultado correcto.
Espero puedan ayudarme. Uso office 2003

1 respuesta

Respuesta
1

Podrías intentar lo siguiente:

1. En tu hoja de base de datos, inserta un columna después de B, en ella vas a concatenar A y B (código de empresa y código de empleado), usando la siguiente función: =concatenar(A, B) y la replicas en toda la columna donde tengas registros. Además esta fórmula la tienes que copiar cada que crees un nuevo registro.

2. En otra hoja, pones lo siguiente:

A | B | C | D

cod empresa | cod empleado | resultado nombre | resultado rut

(captura cod empresa) | (captura cod empleado) | (función 1) | (función 2)ç

Reemplaza las funciones con lo siguiente:

Función 1: =BUSCARV(CONCATENAR(A2,B2),Hoja1!C:E,2,0)

Función 2: =BUSCARV(CONCATENAR(A2,B2),Hoja1!C:E,2,0)

Si encuentra ambos códigos, te regresa el nombre del empleado y el RUT si no lo encuentra te regresa el valor: "#N/A".

Las ventajas son, que no necesitas ordenar la base de datos, no importa si borras o adicionas empleados.

Si no te funciona, buscamos otra solución.

Me funciona de lujo, la verdad no se me había ocurrido lo de concatenar ambos códigos, es tan simple que me da risa, pero a mi no se me había ocurrido, te felicito por tu ingenio y muchas gracias por ayudarme a solucionar el dilema.

Te dejo una solución elegante para que la función BUSCARV no devuelva #N/A, la función SI(ESERROR()), que en este caso quedaría asi:

=SI(ESERROR(BUSCARV(CONCATENAR(A2;B2);Hoja1!C:E;2;FALSO));"NO ENCONTRADO";BUSCARV(CONCATENAR(A2;B2);Hoja1!C:E;2;FALSO))

asi, si no encuentra datos, el resultado es NO ENCONTRADO, en vez de #N/A

Saludos y gracias,…..

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas