Excel Avanzado

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

Excel Avanzado
Tarea 5.4 150x143, Crear un Archivo por cada hoja de Excel

Crear un Archivo por cada hoja de Excel

| 11 comentarios

Crear un archivo por cada hoja Excel es usado especialmente para organizar datos. Cuando estos datos se encuentran en el mismo archivo pero necesitan ser distribuidos para distintas áreas o personas a las cuales solo se les debe dar una porción de la información que se tiene en el archivo.

Para esto se necesita crear un archivo Excel por cada hoja que se tiene,  y en aquel archivo debe encontrarse toda la información que se encuentra en esa hoja.  Para esto, se hace uso de WORKBOOKS.ADD. Sin embargo, para crear un archivo por cada hoja se debe de hacer  la misma acción el mismo número de veces que debe ser igual al mismo número de páginas. Por este motivo, primero de debe de crear la acción repetitiva para lo cual se puede usar FOR NEXT  o también se puede usar DO LOOP. En este caso usamos DO LOOP con la restricción de que la acción se realice hasta que una variable, a la cual llamaremos i, sea mayor al número de hojas que se encuentra en el archivo Excel. Para este ejemplo, las hojas que se encuentran en el archivo son las siguientes:

Tarea 5.1, Crear un Archivo por cada hoja de Excel

Luego, seleccionamos la primera hoja y copiamos su contenido. Inmediatamente después agregamos un nuevo libro con WORKBOOKS.ADD y llamamos a otra variable con el mismo nombre de la hoja seleccionada. En la imagen se puede observar la creación del archivo.

Tarea 5.2 300x175, Crear un Archivo por cada hoja de Excel

(Para mayor visualización de la imagen, hacer click en la misma)

Ahora, en este nuevo libro copiamos la información.

Tarea 5.3 300x175, Crear un Archivo por cada hoja de Excel

(Para mayor visualización de la imagen, hacer click en la misma)

Después, guardamos el archivo con el nombre de la hoja en el mismo lugar que se encuentra el archivo original y cerramos el libro.

Finalmente hacemos que esta acción se repita, haciendo que la constante i aumente en uno hasta que llegue al número de hojas que se tiene en el Excel  y cerramos la acción con LOOP. Es así como tenemos varios archivos en el mismo lugar en donde se encuentre el archivo Excel original, como se muestra en la figura.

Tarea 5.4 300x85, Crear un Archivo por cada hoja de Excel

Este ejemplo se encuentra en el siguiente archivo

Descargar ejemplo

Elaborado por: Fiorella del Carmen

Formato para crear archivo por cada Hoja

Luego de descargar el ejemplo (líneas arriba) para crear los archivos y en cuanto los haya probado notará que los archivos generados son archivos *.xls, esto se debe a una de las últimas líneas en las que aparece:

FileFormat:=xlNormal

Si desea cambiar el tipo de archivo generado puede reemplazar el código indicado, por las siguientes alternativas:

FileFormat:=56

FileFormat:=51

FileFormat:=52

FileFormat:=50

El 56 servirá para generar un *.xls (formato compatible con Excel 2003), el 51 generará un XLSX (archivo Excel normal -  sin macros),  el 52 nos dará un *.xlsm (libro de Excel habilitado para macros), y el 50 nos generará un *.xlsb (libro binario de Excel).

11 comentarios

Deja una respuesta

Los campos requeridos estan marcados con *.