Velocidad de procesamiento en macros excel

Encuentro que los modelos que voy generando "pesan" demasiado para moverlos eficientemente con mi maquina. Me encuentro en el punto en el que la velocidad de procesamiento es ya para mis aplicaciones un cuello de botella.
¿De qué parámetros depende la velocidad de proceso en macros excel?
¿Cuáles de estos son modificables mediante programación vba o con parches en el excel?
¿Cuáles dependen del maquina en la que se ejecute la macro y que características de esta son criticas para ello?
En fin, ¿cómo se puede optimizar la velocidad de procesamiento?
aplicaciones como el crystal ball que corren en excel dicen incorporar motores de calculo que reducen el tiempo de proceso =>¿Es posible conseguir software freeware que haga esto par excel?

1 respuesta

Respuesta
1
Un caso similar se presento unos días atrás con un usuario, el cual yo mismo respondí de manera amplia y dando a entrever varias causales.
Dentro de breves momentos te respondo puesto que tu caso es de sumo interés.
Dentro de poco vuelvo. Descuida
Christian
Bueno vamos a clasificar las posibles causas las cuales evidentemente tendrás la labor de evaluarlas:
a) Hardware:
1.- El microprocesador: Este es prácticamente el componente más importante de la PC, puesto que es aquí donde entra a tallar la velocidad de procesamiento de los datos que ejecutan las aplicaciones. Si tienes una PC antigua deberás evaluar hace que tiempo tiene incorporado dicho microprocesador.
2.- La memoria RAM: Si tienes una RAM muy reducida y tus aplicaciones exige varios kb de memoria hace que se vuelva lento el sistema. Te aconsejo que tu RAM sea de 1Gb o más. En cuestiones de diseño es aconsejable que sea mayor a 1Gb.
---
B) SOFTWARE:
1.- Declarar variables en los procedimientos VBA: Esto es lo que algunos obvian. Cuando se realizan macros, procedimientos en VBA y no se declara el tipo de datos, por tanto VBA asume que son del tipo "Variant". Este tipo de datos "Variant" hace que precisamente que nuestras macros sean pesadas y se nota cuando son realmente aplicaciones enormes, donde el tiempo es vital. Los tipos de datos comunes que VBA emplea en sus procedimientos son "Integer", "Double", "String", entre otras. Si obviamos reitero que sera "Variant".
2.- Declara variables a objetos: Es también otra causal de la ralentización en aplicaciones cuando la hacemos en VBA. Si existen muchas lineas en las cuales hacemos referencias a libros, hojas de calculo, rangos, es muy recomendable asignar variables a estos objetos. La instrucción que precisamente permite realizar este tipo de asignación de variables a objetos es mediante "Set".
3.- Exportar e importar módulos: Supongamos que en Libro1 tienes un modulo el cual es el que pesa demasiado. Te sugiero que abras un nuevo libro "Libro2". El modulo que esta en Libro 1 deberás exportarlo a Libro2. Luego de ello elimina el modulo que tienes en Libro1. Luego de haber eliminado el modulo en Libro1 deberás importarlo para recuperarlo. Realizar esta operación hace que misteriosamente se aligere el archivo.
4.- Revisa tus códigos en VBA puesto que pueden tener virus. La codificación de un virus es normalmente código incoherente y que ha veces no solemos entender.
5.- Las aplicaciones se vuelven lentas también debido a que no existe un buen Programa de detección de virus. Activa tus Firewall, Instala un buen antivirus como el Karspersky 2009 u otra alternativa también es el Avast el cual son muy eficaces.
****
Espero haberte ayudado en tu caso. Me comentas luego.
Christian
Gracias chistian. Probare lo que sugieres de exportar importar y quizás amplíe la ram si lo primero no es suficiente.
Respecto a lo del parches que mejoren la velocidad de proceso, ¿conoces algo parecido?
Gracias de nuevo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas