Fuite de Mémoires en vba

  • Initiateur de la discussion fahd
  • Date de début
F

fahd

Guest
salut a tous les gents du forums
g développé une applis assez volumineuse en vba excel, j'utilise pas mal de classe, et de module
j'utilise aussi pas mal d'instance intermedaire pour divers calcul (workbook,worksheet, range....)
mon prbm c ke g une fuite mémoire ki est assez enorme
je croayais ke vba gérait sa mémoire mais je me suis rendu compte ke non..
ce ke j'aimerai savoir c comment fait on pour supprimer une instance (ke se soit d'un range, d'une classe ou autre...) en vba
si kelkun a une idée a me proposé je suis preneur..
merci d'avance a tt ceux ki s'interesseront a mon pbm
 
J

Jean-Marie

Guest
Bonjour

Attention à l'endroit de la déclaration de tes variables, tu déclares une variablesdans une Sub, à la fin de la Sub la variable cesse d'exister. Cette variable ne peut-etre appelée dans une autre Sub.

Les pros du VBA me corrigerons, si je me trompe.

@+Jean-Marie
 
F

fahd

Guest
ben ca je le sais, mais le probleme c ke qd tu crée une instance , c de la memoire ke tu alloue, donc même qd tu sort de la sub, certe tu perd la variable (un pointeur en kelke sorte), par contre la memoire est toujours alloué, il faut trouver un moyen de la libérer, en C++ ya le mot clé delete, en C c free, en java et en C# ya un garbage collector ki le gere automatikement, par contre en vb, aucune idée, g trouvé une astuce ki est assez interessante : set MonInstance = Nothing
ca doit pouvoir marcher , je suis entrain de faire des tests, pour ceux ki sont interessé par les resultats faites moi signes je vous tiendrai au courant
 

Discussions similaires

F
Réponses
0
Affichages
973
F
F
Réponses
2
Affichages
887
F
F
Réponses
2
Affichages
840
F

Statistiques des forums

Discussions
314 655
Messages
2 111 604
Membres
111 217
dernier inscrit
aladinkabeya2