Guardar cada hoja de excel por separado con el nombre de la hoja

23/02/2008 - 00:36 por Halixman | Informe spam
Tengo un libro con 50 hojas. Quiero guardar cada hoja de excel por separado
en un nuevo archivo. Cada nuevo archivo.xls deberá tener como nombre el
nombre de la hoja.

Por ejemplo: Si la hoja 40 se llama Costos, quiero que se genere el archivo
Costos.xls, pero ese archivo solo contenga esa hoja.
 

Leer las respuestas

#1 Héctor Miguel
23/02/2008 - 20:55 | Informe spam
hola, 'anonimo/a' !

Tengo un libro con 50 hojas. Quiero guardar cada hoja de excel por separado en un nuevo archivo.
Cada nuevo archivo.xls debera tener como nombre el nombre de la hoja. Por ejemplo:
Si la hoja 40 se llama Costos, quiero que se genere el archivo Costos.xls, pero ese archivo solo contenga esa hoja.



suponiendo que no habra problemas de nombres duplicados entre las hojas y/o libros ya existentes -?-
y asumiendo que cada nueva hoja-libro se puede guardar en el mismo directorio que el original -?-
prueba con una macro +/- como la siguiente (y la ejecutas desde tu libro con las 50 -o mas- hojas)...

Sub Separa_hojas()
Application.ScreenUpdating = False
Dim n As Integer
For n = 1 To Worksheets.Count
Worksheets(n).Copy
ActiveWorkbook.SaveAs ActiveSheet.Name
ActiveWorkbook.Close
Next
End Sub

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

Preguntas similares