Reducir el tamaño del archivo

t4373125

Board Regular
Joined
Jun 26, 2002
Messages
52
Me he fijado que a medida que voy grabando un archivo que tiene formularios y código VBA, este va aumentando de tamaño considerablemente, aunque los cambios sean mínimos. Por que? Hay alguna solución?

La que yo he encontrado es hacer una copia de todas las hojas, código y formularios en un libro nuevo. El archivo reduce de tamaño hasta una cuarta parte.

Alguien me puede decir algo sobre este tema?

Muchas gracias.
 

Excel Facts

What is =ROMAN(40) in Excel?
The Roman numeral for 40 is XL. Bill "MrExcel" Jelen's 40th book was called MrExcel XL.
Si, ese ha sido un serio problema. Aparte de la solución que pone, que es muy tediosa y cansona, lo que hago es cerrar completamente Excel, abrir nuevamente el libro o proyecto, y guardar inmediatamente el libro. Eso me ha reducido el tamaño hasta la mitad más o menos.

Excel XP hace un poco mejor este trabajo...
 
Upvote 0
Algo que es muy rebuscado pero te puede ayudar es:
A las celdas que ya no tiene datos que te sirvan y que se reemplazaran por datos nuevos, o son temporales, .......; las seleccionas y las eliminas(boton derecho del mouse-Eliminar), esto borra la inicializacion que hace excel en cada celda que es ocupada en algún momento(todo formato o formato condicional).

No se si fui claro o si esa era tu pregunta.

Saludos.
 
Upvote 0
Hola, prueba la siguiente macro...

El archivo a "limpiar" debe estar guardado.
Al final del proceso, en la misma carpeta donde este guardado su archivo, quedaran los archivos de todos los componentes exportados, es facil agregar un poco de codigo para borrarlos al final.
Es una macro de prueba, pruebenla sobre copias de su archivos de trabajo, puesto que modifica los archivos con codigo, no deseo que por alguna causa se pierda algo de su trabajo, que se bien cuanto cuesta
Tiene algunos detalles, espero a alguien que los mencione

Gracias y saludos<PRE>
Public Sub LimpiarLibro()
Dim Ruta1 As String, Ruta2 As String
Dim strComponentes() As String
Dim co1 As Integer
Dim Tipo As Long, Tam1 As Long, Tam2 As Long
Dim Compo As Object

Ruta1 = ActiveWorkbook.Path & ""
If Len(Ruta1) > 1 Then
Tam1 = FileLen(ActiveWorkbook.FullName)
For Each Compo In ActiveWorkbook.VBProject.VBComponents
Tipo = Compo.Type
Select Case Tipo
Case 1
Ruta2 = Ruta1 & Compo.Name & ".bas"
Case 2
Ruta2 = Ruta1 & Compo.Name & ".cls"
Case 3
Ruta2 = Ruta1 & Compo.Name & ".frm"
End Select
If Tipo > 0 And Tipo< 4 Then
ReDim Preserve strComponentes(co1)
strComponentes(co1) = Ruta2
co1 = co1 + 1
Compo.Export Ruta2
ActiveWorkbook.VBProject.VBComponents.Remove Compo
End If
Next Compo
If co1 > 0 Then
For co1 = 0 To co1 - 1
ActiveWorkbook.VBProject.VBComponents.Import strComponentes(co1)
Next co1
ActiveWorkbook.Save
Tam2 = FileLen(ActiveWorkbook.FullName)
MsgBox "Nombre del libro = " & ActiveWorkbook.Name & vbCrLf & vbCrLf & _
"Tamaño original = " & Format(Tam1 / 1024, "#,##0 KB") & vbCrLf & vbCrLf & _
"Tamaño final = " & Format(Tam2 / 1024, "#,##0 KB")
Else
MsgBox "El libro no cambio de tamaño"
End If
Else
MsgBox "El libro no esta guardado"
End If
Erase strComponentes

End Sub</PRE>

_________________
TODO LO QUE NO ES DADO ES PERDIDO
This message was edited by valedor on 2002-08-14 08:31
 
Upvote 0

Forum statistics

Threads
1,216,746
Messages
6,132,475
Members
449,729
Latest member
davelevnt

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top