Ayuda con exel 2007

10/12/2007 - 22:00 por luis2222_2 | Informe spam
Mi problema es el siguiente:

Fíjate que estoy utilizando el macro que me enviaste:

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


y me funciona muy bien en 2 archivos, pero en los otros 2 de 11 y 12
MB de tamaño,en estos no me corre el macro sino que me tira un
mensaje de error "exel detectado errores y debe cerrarse", cuando lo
corro en Office 2007 si funciona, pero el problema es que me lo guarda
en .xlsx y yo los necesito en xls cuando le cambio en las opcciones
que me lo guarde en xls me lo sigue guardando en xlsx cuando ejecuto
el macro.
 

Leer las respuestas

#1 Héctor Miguel
10/12/2007 - 22:58 | Informe spam
hola, Luis !

1) si los archivos de 1 y 12 Mb ocasionan un colapso de tu excel...
-> no descartes la posibilidad de algun tipo de corrupcion (quizas por limites excedidos) :-((

2) si puedes/prefieres/... usar excel 2007 para hacer la separacion de libro-por-hoja,
cambia la instruccion con el SaveAs e incuye el formato de compatibilidad con las versiones 97 a 2003

de:
ActiveWorkbook.SaveAs ActiveSheet.Name

a:
ActiveWorkbook.SaveAs Filename:=ActiveSheet.Name, FileFormat:=xlExcel8

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

__ la consulta original __
Mi problema es... utilizando el macro ...
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
y me funciona muy bien en 2 archivos, pero en los otros 2 de 11 y 12 MB de tamano
en estos no me corre el macro sino que me tira un mensaje de error "exel detectado errores y debe cerrarse"
cuando lo corro en Office 2007 si funciona, pero el problema es que me lo guarda en .xlsx y yo los necesito en xls
cuando le cambio en las opcciones que me lo guarde en xls me lo sigue guardando en xlsx cuando ejecuto el macro.

Preguntas similares