Macro para grabar cada hoja en un archivo

23/02/2008 - 00:31 por Tony | Informe spam
Hola de nuevo...

Me gustaría que alguien me dijese qué macro debería de utilizar para que
cada una de las 4 hojas que tengo en un archivo se grabasen como un archivo
.html, cada una con su nombre (que equivaldría al nombre de cada hoja)...

Gracias por anticipado...

Preguntas similare

Leer las respuestas

#6 tonya
25/02/2008 - 18:24 | Informe spam
Pues muuuchas gracias Hector... Ha salido fenomenal... El único inconveniente
es uno que tú apuntas: en el directorio donde se van a grabar ya existe el
fichero con ese nombre y el usuario debe de contestar "sí" cada vez que se
ejecuta la macro porque le pregunta si "desea reemplazar el fichero"...

Mi pregunta es: ¿se puede modificar de algún modo para que directamente
grabe sobre los libros con ese mismo nombre sin que tenga el usuario que
contestar "sí" a si desea reemplazar?...

Gracias de nuevo...

"Héctor Miguel" wrote:

hola, Tony !

> No hay nada que impida importar carpeta cada hoja de excel
> pero necesito que el final de una macro se quede grabada cada hoja en un archivo distinto con... los nombres de cada hoja
> Como se puede hacer?...

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 4 -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.



Respuesta Responder a este mensaje
#7 Héctor Miguel
25/02/2008 - 19:30 | Informe spam
hola, !

... en el directorio donde se van a grabar ya existe el fichero con ese nombre
y el usuario debe de contestar "si" cada vez que se ejecuta la macro porque le pregunta si "desea reemplazar el fichero"...
... se puede modificar... para que... grabe sobre los libros con ese mismo nombre sin que tenga el usuario que contestar ...



una opcion es suprimiendo los mensajes de alerta de la aplicacion (p.e.)

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

saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida