Microsoft 365 Garder les variables d'une macro tant que le fichier Excel est ouvert

micmond

XLDnaute Nouveau
Bonjour,
J'ai cherché sur le web comment garder la valeur de certaines variables de mon programme vba et ceci tant que mon fichier excel contenant la macro reste ouvert et je n'ai pas trouvé.
J'ai trouvé les conseils d'utiliser "public", "static", "garder dans un des onglets du fichier excel les valeurs". J'ai essayé, soit cela ne fonctionnait pas, soit cela ne convenait pas à ma demande
Ce que je veux c'est que lorsque l'on referme le fichier, toutes les variables repassent a "zéro" ou "false" mais tant que le fichier reste ouvert certaines variables gardent leur dernière valeur. Exemple :
- Etape 1 : J'ouvre mon fichier Z et je fais tourner la macro X qui met une valeur Y à 3. La macro s’arrête (je sors de la macro), je ne ferme pas mon fichier Z
- Etape 2 : Je redémarre la macro X et je teste la valeur Y (je veux qu'elle soit à 3) (dans mes essais elle repasse à 0)
Etape 3. Je ferme le fichier Z et je l'ouvre de nouveau. Je redémarre la macro X et je teste la valeur de Y (je veux qu'elle soit à 0)
 
Solution
Bonjour,

Les variables déclarées en tête de module le font. Par contre si entre deux tests vous modifiez vos macros, vba réinitialise les variables.

Si vous voulez garder vos valeurs, mettez les dans des cellules et remettez les à 0 sur l'évènement BeforeClose de votre classeur.

Cordialement

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Les variables déclarées en tête de module le font. Par contre si entre deux tests vous modifiez vos macros, vba réinitialise les variables.

Si vous voulez garder vos valeurs, mettez les dans des cellules et remettez les à 0 sur l'évènement BeforeClose de votre classeur.

Cordialement
 

Discussions similaires

Statistiques des forums

Discussions
314 496
Messages
2 110 236
Membres
110 708
dernier inscrit
novy16