Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

Crear una nueva hoja por cada elemento de un Autofiltro

| 6 comentarios

Muchas veces tenemos una base de datos enorme, ya se las características de una empresa o el ranking de una universidad, y necesitamos limitar esa cantidad de datos dependiendo de lo que necesitamos. Para ayudarnos a solucionar este problema existen los auto filtros, los cuales nos muestran solo un selecto grupo de datos que comparten alguna característica en particular. Pero, que tal si queremos trabajar con cada una de estas características en una nueva hoja. ¿Tendremos que copiar cada uno de los datos que deseemos manualmente? Para ahorrarnos tiempo existe esta macro:

1. Establecer las variables que daremos uso, ya sea  hoja y el rango de datos
2. Seleccionar la hoja con la que trabajaremos en este caso la activa
3. Si no existe auto filtro en la hoja activa, el macro da por hecho que no es necesario continuar
4. Seleccionar la columna que contenga los datos con los que se trabajara
5. Crear una lista de objetos
6. Rellenar la lista con datos no repetidos
7. Comienza a evaluar el valor de los datos seleccionados
8. Elimina las hojas que puedan tener el mismo nombre que las hojas que vamos a crear. De este modo la macro puede ser usada en múltiples instancias sin el error de tratar de crear hojas con un mismo nombre
9. Selecciona un valor único de la lista de auto filtro
10. Copia el rango de datos del valor único hacia una nueva pagina y la nombra con el mismo valor únicos hojas por su orden alfabético o en este caso su valor numérico
11. Retrocede y toma otro valor único para seguir los mismos pasos
12. Ordena las hojas por su orden alfabético o en este caso su valor numérico
13. Selecciona la hoja principal (activa) y nos muestra todos los datos

Moises Vicente

Añadir hojas auto filtro

6 comentarios

  1. Espero ser informado de los avances más recientes de excel avanzado. Gracias.

  2. Estimado hace tiempo buscaba una macro como esta, ahora lo que quiero saber es como podria en las primeras filas poner una información especifica.

    Por ejemplo tengo una base de dato en la cual tengo el rut de la persona, nombre, apellido, tipo de gasto y monto gastado.

    Lo que quiero generar es una hoja para cada rut, y que en la primera fila me aparezca el nombre y apellido de la persona, y luego en A3 por ejemplo me aparezca Gasto 1, luego en A4 Gasto 2 y asi sucesivamente para cada gasto que tenga la persona y luego en B3 aparezca el tipo de gasto que tenia y en C3 el monto.

    Si me pudieras ayudar te lo agradeceria mucho.

    Saludos

    • Sergio,

      Pudiste obtener la respuesta que necesitabas, yo busco la misma información, de agregar un pequeño encabezado a cada hoja, pero al correr la macro borra la información y la sobre escribe.

  3. buenas tardes quisiera saber como puedo modificar esta macro de forma que conserva las formulas que se poseen en cada fila, toda vez que crea las hojas pero copian los valores de la s filas, gracias

  4. buenas tardes, tengo un archivo donde crea un formulario con una base de datos, de esa base de datos crea una hoja llamado formato, en una de las celdas esta el registro num orden, con este numero que se le da al darle num folio aparece en automático el num orden, y con sus datos en automático del formato, quiero saber como crear una macro con un botón para que copie el formato completo a otra hoja nueva poniéndole el nombre en automático de la celda que contiene el num orden, obviamente que cuando realice el siguiente formato va a cambiar el nombre con el siguiente numero de orden (num orden) y así sucesivamente.

  5. Muchas gracias, estaba buscando algo como esto, la verdad excelente.
    De nuevo gracias

Deja una respuesta

Los campos requeridos estan marcados con *.