Macro VBA para crear archivos de cada hoja Excel
Con un mínimo de código vamos a crear archivos independientes de las hojas de un libro. Un ejemplo sería un libro con 124 hojas, una hoja por empleado, y ahora queremos separar las hojas de cada colega y crear libros independientes.
Procedimiento
Empezamos con el libro de una o varias hojas. Luego vamos a crear un módulo dentro de este libro. En este módulo escribimos el código.
Crear el módulo
Entra a Herramientas – Macros – Editor VBA. A la izquierda ves (si no lo ves CTRL+R) algo como “ProyectoVBA (Tu libro). Marca ese proyecto. Insertar – Módulo.
Doble click en el módulo nuevo, y a la derecha sale un espacio blanco, es para el código. Herramientas – Referencias. Marca Microsoft ActiveX DataObjects x.x Library.
Ahora cierras el editor VBA, vuelves a Excel. Guardamos el libro.
Código
Sub Crear_archivos_de_hojas() Dim strHoja, strStartHoja, strRuta As String Dim i As Integer Application.ScreenUpdating = False strStartHoja = ActiveCell.Worksheet.Name 'bucle todas hojas For i = 1 To Sheets.Count 'copia la hoja a libro nuevo Sheets(i).Activate strHoja = ActiveCell.Worksheet.Name Sheets(strHoja).Copy 'donde guardar los archivos creados strRuta = "C:\excel\vba\ejemplos" 'guarda el libro nuevo ActiveWorkbook.SaveAs Filename:=strRuta & "\" & strHoja, _ FileFormat:=xlNormal, Password:="", WriteResPassword:="", _ ReadOnlyRecommended:=False, CreateBackup:=False ActiveWindow.Close Savechanges:=True 'repetir bucle' Next Sheets(strStartHoja).Activate Application.ScreenUpdating = True End Sub

RSS