Effacer toutes les variables

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 !

malabarbe

XLDnaute Occasionnel
Bonsoir,

Je copie des données dans une feuille ou j'applique
une Macro qui me trie, me clase, ou épure les données.

Quand, je refait la mème oppération, certaines variables
contiennes encore des valeurs qui affectent ou perturbent
l'utilisation de la Macro.

Comment faire pour que a chaque nouvel appel de la Mcro,
toutes les variables renseignées par la Macro précendente
soit effaçées ?

Vôtre aide serait la bienvenue.

A vous lire
 
Re : Effacer toutes les variables

Bonsoir tototiti2008 et Jean-Marcel,

Je ne fait aucunes déclarations.

Mes variables, sont déclarées implicitement
dans les traitements.

example :
Code:
ddd= cells(1,2)
'ddd= 123

Si dans la deuzième application de la Macro,
je fait en premier :
Code:
Msgbox ddd, cela m'affiche : 123

Donc, les variables non misent a blanc, restent
avec la valeur précédente !
 
Re : Effacer toutes les variables

Pour finir,

Personne n'a pu répondre a mon problème !

Dans Macro 1, j'ai : toto = 789
Dans Macro 2, j'ai : msgbox toto cela me donne 789

Alors que la variable toto n'est pas déclarée.

Pourquoi toto garde la valeur de la Macro 1 ?
 
Re : Effacer toutes les variables

Re


Donc tu n'as pas été lire l'aide de VBA 😕😕

Voici ce que tu aurais pu y lire
Une variable de niveau procédure déclarée avec l'instruction Dim conserve une valeur jusqu'à la fin de la procédure. Si la procédure appelle d'autres procédures, la variable conserve également sa valeur pendant l'exécution de ces procédures.
Si une variable de niveau procédure est déclarée avec le mot clé Static, elle conserve sa valeur tant que le code est exécuté dans un module. À la fin de l'exécution du code, la variable perd sa portée et sa valeur. Sa durée de vie est identique à celle d'une variable de niveau module.
Une variable de niveau module diffère d'une variable statique. Dans un module standard ou un module de classe, elle conserve sa valeur jusqu'à ce que vous arrêtiez le code. Dans un module de classe, elle conserve sa valeur tant qu'existe une instance de la classe. Les variables de niveau module utilisant des ressources mémoire jusqu'à la réinitialisation de leurs valeurs, il convient de les utiliser uniquement lorsque cela est nécessaire.
Si vous incluez le mot clé Static avant une instruction Sub ou Function, les valeurs de toutes les variables de niveau procédure dans la procédure sont conservées entre les appels.
 
Re : Effacer toutes les variables

Staple1600, toi et les autres participants,
n'avez pas compris mon problème !

- 1 - Je ne déclate aucune variable que ce soit
par Dim ou Static.
- 2 - Les variables(redondantes) sont déclarées(crées)
dans la Macro :
Code:
if cells(a1) < 10 then lolo = "merdouille"
Si, j'applique une nouvelle Macro sur la mème feuille,
avec comme premier code :
Code:
Msgbox lolo
cala affiche : merdouille
 
- 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