Modifier une variable globale
Résolu
Saturnin G
Messages postés
49
Statut
Membre
-
melanie1324 Messages postés 1561 Statut Membre -
melanie1324 Messages postés 1561 Statut Membre -
Bonjour,
Dans un module je déclare une variable globale comme suit:
Public Function affichage() As Boolean
affichage = True
End Function
Par défaut, affichage prends la valeur VRAI. J'aimerais dans un module modifier la variable globale et mettre affichage à FAUX.
Peut-on modifier une variable globale à partir d'un module ?
Merci de votre aide.
Cordialement.
Dans un module je déclare une variable globale comme suit:
Public Function affichage() As Boolean
affichage = True
End Function
Par défaut, affichage prends la valeur VRAI. J'aimerais dans un module modifier la variable globale et mettre affichage à FAUX.
Peut-on modifier une variable globale à partir d'un module ?
Merci de votre aide.
Cordialement.
1 réponse
-
Bonjour,
Bien sûr. mais je te conseillerais de déclarer ta variable autrement.
Car à chaque fois que tu iras chercher ta variable, la fonction se lancera.
Tu peux déclarer ta variable comme ceci dans un module :
Public affichage As boolean
et lui affecter la valeur que tu veux dans un module :
sub variable ()
affichage = true
end sub
donc dans un module, tu auras :
Public affichage As boolean
sub variable ()
affichage = true
end sub-
-
-
-
En fait mon problème c'est que lorsque j'exécute ma Macro1 qui appelle ma Macro2 je voudrais que le code gérant l'affichage qui se trouve dans ma Macro2 ne s'execute pas, qu'il n'affiche pas mon bloc note. Mais je veux aussi lorsque que j'exécute ma Macro2 toute seule, que le code qui gère l'affichage de mon bloc note s'exécute.
Voilà en gros mon problème.
C'est pour ça que j'ai besoin d'initialiser ma variable globale lorsque je la déclare (pas dans les modules). Je voudrais la mettre à vrai par défaut.
Et lorsque j'exécuterai ma Macro1 qui appelle ma Macro2, je voudrais que ma Macro1 aille mettre ma variable affichage à faux, pour que ma Macro2, une fois appelée, n'affiche pas mon bloc note.
Et si je lance ma Macro2 toute seule, par défaut l'affichage doit se faire.
Dans les deux cas ma Macro2 s'exécutera, c'est pour ça que je ne peux pas modifier ma variable affichage à cet endroit, et que j'ai besoin de la mettre par défaut à vrai. -
C'est bon, j'ai trouvé la solution à mon problème.
Lorsque je déclare comme tu me l'as dit la variable affichage:
Public affichage As boolean
Elle prends par défaut la valeur FAUX. Ainsi lorsque je lance ma Macro1 qui appelle ma Macro2 je la passe à VRAI dans ma Macro1. Et si ma variable affichage est à FAUX alors l'affichage de mon bloc note s'effectue.
Merci pour ton aide précieuse, ça m'a bien orienté vers la solution.
Bonne journée.
-