Liberar memoria al ejecutar Macros

Que instrucción debo utilizar para liberar memoria, cuando termina de ejecutar una rutina, resulta que al ejecutar mis macros, las cuales tienen forms, matrices, variables dinámicas, etc... En Excel 97 sale un error de esos de Win que nadie entiende... Supongo que es por eso, en una maquina normal, 128 en ram funcionan correctamente!

1 respuesta

Respuesta
1
Una instrucción precisa para liberar memoria no existe, existe para ciertos tipos de objetos y matrices dinámica, pero el uso eficiente de la memoria viene más determinado por las técnicas de programar, un error de "esos de Win que nadie entiende" muy bien se puede deber a errores de programación, las recomendaciones para usar la menor memoria posible son:
Usar en lo posible variables locales
Declarar el tipo de dato de forma explicita
Usar los tipos de menor tamaño siempre y cuando te sean suficientes, por ejemplo, si no necesitas números enteros arriba de 32000 usar Integer y no Long
En caso de objetos, cualquier que lo inicializes con la instrucción Set como en
Set miRango = Selection
al final o cuando ya no la uses liberarla con
Set miRango = Nothing
en le caso de Matrices dinamicas, cuando ya no la uses borrar su contenido
Dim strNombres() As String
ReDim strNombres(10)
Erase strNombre
Pero como te dije al principio, es muy importante también, una programación eficiente...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas