Filtro base de datos excel

Hola, quisiera me ayudaran a resolver lo siguiente:
Tengo una base de datos en excel como sigue: (esta es solo una tabla del concepto "ministraciones":
Nombre fecha concepto cheque cantidad
juan 03/02/11 agua 352 2600
pedro 10/03/11 helado 153 1500
enrique 15/03/11 maceta 250 5300
juan 25/03/11 Alimento 623 10000
enrique 14//04/11 fresas 125 14000
y necesito hacer un informe que me extraiga mediante el rango "condiciones" (en este caso por ejemplo la "condicion" seria "juan" todo lo relacionado con juan:
Fecha concepto cheque cantidad
03/02/11 agua 352 2600
25/03/11 Alimento 623 10000
Aquí ya no necesito que aparezca el nombre de juan porque este se encuentra en el rango "condiciones" que forma parte del encabezado del informe (que se encuentra en la hoja llamada "informe") con los datos personales de Juan extraídos mediante el comando "bdextraer" de la tabla "Clientes".
Si esto se puede hacer mediante una macro o VBA necesito que en cuanto se introduzca el nombre del cliente en el rango "condiciones" se active dicha macro o VBA para que genere la información... Y así sucesivamente para los siguientes clientes que tienen desde una a más entradas dentro de la tabla "ministraciones". La información se extrae de la tabla "ministraciones" y se coloca en la hoja "informe" en un rango predeterminado.
Espero haberme explicado bien claro
Gracias de antemano por su ayuda

1 Respuesta

Respuesta
1
Crea el ejemplo que te voy a enviar en un archivo nuevo, luego lo aplicas a tu proyecto.
En la hoja1 a partir de la celda B4 escribe los encabezados de columna que mencionas arriba,
En la misma hoja celda A5 copia la siguiente formula y la arrastras hacia abajo hasta donde desees. =SI(B5=Hoja2!$C$3,A4+1,A4)
En la hoja2 pegas los encabezados a partir de la misma celda B4
A partir de la celda A5 copias números consecutivos del uno en adelante, deben llegar hasta donde llega la fórmula introducida en esta misma columna en la hoja1.
En la celda B5 copias la siguiente fórmula y la arrastras hacia abajo hasta donde llgan tus números consecutivos y hacia la derecha hasta donde llegan los encabezados de columna.
=SI(SI.ERROR(INDICE(Hoja1!$A$4:$F$20,COINCIDIR($A5,Hoja1!$A$4:$A$20,),COINCIDIR(B$4,Hoja1!$A$4:$F$4,)),"0")=0,"",SI.ERROR(INDICE(Hoja1!$A$4:$F$20,COINCIDIR($A5,Hoja1!$A$4:$A$20,),COINCIDIR(B$4,Hoja1!$A$4:$F$4,)),""))
Los números en la fórmula que están marcados en negrita debe ser igual al numero de fila que tienen los números consecutivos o la fórmula en la columna A de la hoja1.
Espero te sirva si no me escribes nuevamente, podría enviarte el archivo de ejemplo
Mi correo [email protected]
Perfecto! Eres un genio! Muchas gracias, creí que no se podría hacer eso y ya te iba a dar más lata porque no mencionaste lo que debía ocurrir en la celda C3 de la Hoja2 pero al analizar tu fórmula di con la clave faltante que era dónde escribir la condición a filtrar, solo una última ¿cómo hago para que no me aparezca la condición filtrada? Es decir, al devolver el resultado me aparece
Juan
Juan
Juan
Solo necesito que aparezca juan en la celda C3 de la hoja2 (que es la condición que necesito filtrar y que escribo) y todos los demás conceptos que tiene juan están bien
Por tu excelente ayuda MUCHAS GRACIAS!
Quita el campo nombre en la segunda hoja y corres los demás campos hacia la izquierda, luego eliminas la ultima columna.
O bien eliminas la columna nombre siempre con el cuidado de no eliminar la celda en la cual se introduce la condición.
Bueno eso creo puedes hacerlo sin problemas. Igual si tienes dudas escríbeme.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas