Faut-il libérer les variables?

  • Initiateur de la discussion Initiateur de la discussion Luki
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Luki

XLDnaute Accro
Bonjour le forum,

me revoilà après une longue journée d'absence... et quel agréable surprise de ne pas avoir à m'identifier, je suis déjà reconnu! C'est nouveau de ne pas avoir à le faire chaque jour ou c'est une erreur?

Bref, ma question du jour porte sur les variables.



Est-ce indispensable de les libérer, ne sont elles pas automatiquement libérées à la fin de l'exécution du code?

A savoir que par flemme, j'ai déclaré une majorité de variables récurentes publiques dans mon projet. Mais cela semble poser problème dans le cas où je fait des boucles multiples sur des feuilles et des plages.

J'ai l'impression que ça peut venir du fait que je n'ai pas libéré les variables.

J'aimerais bien avoir quelques précisions à ce sujet ça m'aiderait pour résoudre mon Pb.

Merci à tous et A+
 
Salut Luki,

(j'dis bonjour à _Thierry par avance, j'suis sur qu'il va venir rôder sur ce fil 😉)

C'est pas bien la flemme et ça peux causer des soucis. Déclarer ses variables public risque de générer des problèmes de conflit de variables genre j'ai besoin de la variable à un instant t mais elle a été initialisée un peu avant avec une donnée dont j'ai besoin plus tard, etc...
Le bon conseil pour les variables public c'est d'en abuser le moins possible.

Pour répondre à ta question:
Non il n'est pas besoin de libérer les variables. Quand le programme s'arrête (XL/classeur) elles sont effacées de la mémoire. Cependant, pour les variables dites objet il est préférables de les libérer pour éviter les 'oublis' d'effacement de la mémoire.
Donc si tu Set une variable, il vaux mieux la mettre à nothing quand tu en as fini avec elle.
Pareille avec les accès aux BDD genre access: ne pas oublier de fermer l'accès ouvert...

Enfin, il existe des astuces pour conserver des variables: tu les mets dans des cellules d'une feuille cachée par exemple, ou encore tu les écrits dans un fichier temporaire...

Autre chose: utilise le débogueur, le déroulement pas à pas du programme, les espions (en l'occurence pour tes variables public)...ces outils sont vitaux pour tout bon développeur, et il faut absolument les utiliser !

Autre chose bis: Jette un coup d'oeil à ByVal/ByRef dans l'aide de VBA...ça peut éventuellement servir 😉

HTH
 
Re MrExcel,

Eh oui, je me doutais bien que la flemme me poserait des problèmes!

Donc je vais remanier et corriger tout ça!

concernant les variables stockées dans ds cellules de feuilles cachées, je l'utilise déjà, notamment pour garder des paramètre spécifiques à la feuille affichée ( Commandbar par ex).

J'utilise aussi les noms cachés de la feuille pour stocker des valeurs, ils ont l'avantage de diparaître avec la feuille si elle est supprimée.

Concernant le déboqueur, j'utilise la fenêtre variable locale mais je ne sais pas utiliser les espions. A quoi servent -ils?

Merci

( je vais déjeuner, à +) et bonjour à _Thierry!
 
Salut Luki,

Les espions ça sert à surveiler une variable particulière et son contenu. Tu peux demander au progr de s'arrêter si la valeur de la variable change ou en fonction du contexte.
Bref, c'est super utile.

Pour créer un espion c'est très simple. Tu sélectionnes ta variable, un clic droit et tu choisis Ajouter un espion. Dans la fenêtre qui s'affiche tu affines le contexte qui t'intéresse de suivre.

Bon ap'
 
Bonjour Luki, HTH, le Forum

Tiens on me dit bonjour d'avance, et bien c'est super gentil !!!

Rien de spécial à ajouter mais y a pas bon de faire des Variable Public par Faignantise en tout cas !!!

Sinon long complément d'info sur ce Fil :

=> Lien supprimé

Bon App, je file
@+Thierry
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour