Gestion de la mémoire en vba

P

Pierro

Guest
bonjour à tous,

voilà le pb :
j'ai un programme en vbaexcel qui est prévu pour tourner longtemps (une nuit) le problème c'est qu'après quelque temps la mémoire est saturée et cela génère une erreur ...

le prog se balade de sub en sub et revient et repart ... peut être les variables que je déclare ne sont pas bonnes ???

bref, galère quoi

si quelqu'un pouvait m'aider
merci d'avance
a++++++++
 
@

@+Thierry

Guest
Bonsoir Pierrot, le Forum

Huum, un programme VBA qui doit tourner une nuit ? Que fait-il donc ?

VBA n'est pas vraiment prévu pour faire ceci, mais plutôt pour compléter Excel dans diverses tâches, soit de recherches et manipulations diverses, soit de maintenances, soit carrément d'interface (UserForm), tout ceci dans le cadre d'application à éxécution "sporadique" mais pas vraiment pour générer une routine "non-stop"... (quoique celà dépent encore de la routine, VBA peut le faire)

Enfin donc je ne peux pas en dire plus, les Variables bien déclarées sont primordiales dans toute application VBA. Une Variable non déclarée (ou mal déclarée) sera considérée "Variant" avec un espace de stockage pouvant être jusqu'à plusieurs fois 64 fois les besoins, de plus, une Variable Publique non nécessaire ne libère pas la mémoire même après sortie de la procédure l'ayant initialisée... Idem pour les Variables Objects...

Par contre pour mener à bien un développement VBA conséquent il faut avoir certaines bases de connaissance en programmation pour une optimisation correcte. Quand tu dis "le prog se balade de sub en sub et revient et repart" ça me fait un peu peur...

Il y a aussi les performances de la machine qui doit supporter ton programme, disons qu'aujourd'hui un PIV sous Win XP / Office XP (2002 ou 2003) les 256 de Ram recommandés comme "minimum requirement" seront doublé en 512 si on veut avoir un confort d'utilisation. En tant que développeur, je fais pratiquement tout tourner sur un PIII avant un déploiement sur les machines de production, celà m'évite des surprises.

Voilà mes conseils, regardes ce Forum en recherchant les mots clefs "Mémoire", "Variable", " Stockage" etc tu devrais trouver pas mal d'info...

Bonne Soirée
@+Thierry
 

Statistiques des forums

Discussions
312 497
Messages
2 088 986
Membres
104 000
dernier inscrit
dinelcia