Macro seleccione datos según condición y los pegue

Buen día... Primero quiero agradecer a Elsamatilde, excelente su respuesta funcionó perfectamente,.
Mi pregunta es la siguiente:
Tengo una base de datos, la cual en la columna F tiene un código, existen alrededor de 5 códigos diferentes (según el departamento a que pertenecen)... Lo que necesito es que me copie todos las filas que tienen el mismo código en la columna F, y los pegue en otra hoja, una hoja nueva para cada código diferente,. Después de esto una vez separados por departamento (en diferentes hojas), en la columna h tengo una fórmula Vlookup(buscarv) que me trae a que linea de ensamble del departamento pertenece, ahora necesito en esa misma hoja separar las filas por linea de ensamble (el resultado del vlookup), el problema es que la cantidad de filas varia bastante día con día...
Saludos y muchas gracias de antemano.

1 respuesta

Respuesta
1
Bien, parto del supuesto de que sabes escribir BVA (Visual Basic Para Aplicaciones - Es el que se usa en Excel), entonces para desarrollar el programa completo lo que haz de hacer es: 1.) Filtro avanzado de valores únicos para tomar la lista de referencias existentes (a menos que sepas trabajr con arreglos que es otra posibilidad), 2.) Con base es esa lista filtras en un bucle ada unade las referencias, abres una nueva hoja, pegas, y renombras con el valor de la referencia. 3.) En cada hoja puedes usar la función subtotales para acer la separación. Inténtalo y lo lograrás, si no envíame el archivo modelo anexo a [email protected] y te lo devuelvo resuelto.
Gracias amigo... se ve que sabes de lo que hablas..
El reporte lo puedo elaborar siguiendo los pasos tal como lo has mencionado, pero quiero hacerlo de una manera más automatizada, debido a la disponibilidad de tiempo con el que cuento,. Puedo grabar una macro para utilizarla siguiendo los pasos que me has dicho, el problema es que este reporte se corre a diario y el numero de filas o registros varia bastante día con día, por ello no puedo tener un formato establecido que me copie cierto rango, ya que el rango a copiar varia mucho entre días...
Saludos.. muchas gracias por dedicarle tiempo a mi pregunta.
Si, es lo primero que tengo en cuenta cuando voy a programar, que el número de registros es dinámico y el anterior procedimiento contempla eso por defecto porque la funcinalidad de MSExcel en el trabajo con datos así viene establecida. Ocurre que en realidad tu preguntaq es todo un pequeño proyecto de ahí mi sugerencia de "anexa el archivo y te lo devuelvo desarrollado" este método prmite que evalúes el código y observes como funciona. Por si no, como he visto que tiene difucultas para establecer cuantas filas contiene una base de datos al programar te dejo este código que siempre uso:
NFILAS = [A1].CurrentRegion.Rows.Count
Range("A1:F" & NFILAS). Copy
La primera línea de código devuelve el número de filas que contienen datos, donde [A1] es la primera celda donde comienza la lista de datos, que pues generalmente es el encabezado. La segunda línea de código ajusta el rango con base en el número de filas que fueron contadas.
Amigo...
Te adjunte mi archivo.
Saludos.
O.K. - De vuelta anexe un desarrollo acorde a lo requerido, solo necesitará implementar el "maquillaje" de los reportes y las separaciones en cada una de las hojas de códigos lo cual ya es muy fácil. Pero, si necesita ayuda adicional para pulir su proyecto no duce en contactarme.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas