VIDER LE MEMOIRE pour accelerer

vincentmedan Messages postés 2 Date d'inscription jeudi 29 mai 2003 Statut Membre Dernière intervention 29 mai 2003 - 29 mai 2003 à 09:55
maggy55 Messages postés 2 Date d'inscription mardi 8 février 2005 Statut Membre Dernière intervention 6 septembre 2011 - 2 juin 2010 à 20:14
Bonjour à tous,

j'ai un soucis avec une macro dans EXCEL.
En effet je realise des calculs sur environ 500 000 cellules et lorsque je lance ma macro les 100 000 ptremières se font en quelques secondes. Mais apres plus ca avance et plus CA RAME!! vers la 200 000ème cellule il lui faut environ 1/2s par cellule.
Vous direz c'est normal il fatigue!!

ma question est donc la suivante...
Peut-on faire en VBA une commande qui vide la memoire temporaire de maniere a booster ,tous les 100 000 cellules par exemple, le prog?

merci d'avance
@+
vincent

5 réponses

Ktb Messages postés 80 Date d'inscription mercredi 13 mars 2002 Statut Membre Dernière intervention 8 novembre 2006 1
29 mai 2003 à 12:26
L'instruction DoEvents (sans aucun paramètre) permet à l'ordinateur d'exécuter d'autre tâches quand elle est appelée : si t'as une boucle for, pendant que la boucle for est parcourue, le prog est "planté" il ne peut faire que ça : il ne réagit plus aux autres événements. Le fait de mettre DoEvents, ça fait exécuter les événements en attente et ça évite de planter le prog (voire l'ordi) si t'as une grosse boucle.

@+KtB
"En littérature, le plus sûr moyen d'avoir raison c'est d'être mort." (V. Hugo) Aucun rapport avec VB mais pas mal, non ?
1