OVH Cloud OVH Cloud

declaration de variable

7 réponses
Avatar
Albator V
bonjour a tous,

voila dans une de mes macros, un userform souvre avec 2
boutons ( ok et annuler ). quand je clic sur ok je mets
une variable en memoire et idem pour le bouton annuler.
comment faire pour recuperer ces variables dans une autre
macro (autre module)

merci davance

7 réponses

Avatar
Pierre Fauconnier
Bonjour

Plusieurs solutions

Déclarer la variable publique dans le module qui va l'utiliser. Tu pourras
ainsi l'utiliser à travers tout le projet VBA, et donc dans le module du
userform

Déclarer la variable publique dans le userform, puis la récupérer dans le
module grâce à
userform1.MaVariable ( adapter le nom du userform et le nom de la variable)

Déclarer la variable privée dans le userform, et la passer en argument dans
la macro du module
Pour cela, déclarer la macro comme suit dans le module
sub MaMacro(MonParametre)
...
End sub

et dans le userform
Dim MaVariable
...
MaMacro MaVariable
...

Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci

"Albator V" a écrit dans le message de
news:13e101c4a600$e0cae2a0$
bonjour a tous,

voila dans une de mes macros, un userform souvre avec 2
boutons ( ok et annuler ). quand je clic sur ok je mets
une variable en memoire et idem pour le bouton annuler.
comment faire pour recuperer ces variables dans une autre
macro (autre module)

merci davance


Avatar
® © ¿
Bonsour ®,
en debut de module standard
Dim public Mavariable

non ???
-----Message d'origine-----
bonjour a tous,

voila dans une de mes macros, un userform souvre avec 2
boutons ( ok et annuler ). quand je clic sur ok je mets
une variable en memoire et idem pour le bouton annuler.
comment faire pour recuperer ces variables dans une
autre

macro (autre module)

merci davance
.



Avatar
Pierre Fauconnier
Non,

Dim Public ne fonctionne pas
Soit c'est Dim ( = Private ) soit c'est Public

Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci

"® © ¿" a écrit dans le message de
news:424f01c4a602$3b70a540$
Bonsour ®,
en debut de module standard
Dim public Mavariable

non ???
-----Message d'origine-----
bonjour a tous,

voila dans une de mes macros, un userform souvre avec 2
boutons ( ok et annuler ). quand je clic sur ok je mets
une variable en memoire et idem pour le bouton annuler.
comment faire pour recuperer ces variables dans une
autre

macro (autre module)

merci davance
.



Avatar
® © ¿
;o)))
Oui Pierre !!!

-----Message d'origine-----
Non,

Dim Public ne fonctionne pas
Soit c'est Dim ( = Private ) soit c'est Public

Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci

"® © ¿" a écrit
dans le message de

news:424f01c4a602$3b70a540$
Bonsour ®,
en debut de module standard
Dim public Mavariable

non ???
-----Message d'origine-----
bonjour a tous,

voila dans une de mes macros, un userform souvre avec 2
boutons ( ok et annuler ). quand je clic sur ok je mets
une variable en memoire et idem pour le bouton annuler.
comment faire pour recuperer ces variables dans une
autre

macro (autre module)

merci davance
.




.




Avatar
Albator V
jexplique le pourquoi du comment...

je lance une macro qui lance un userform. ce userform a 2
boutons (annuler et ok). quand je fais ok il continue ma
macro et quand je fais annuler il continue aussi... :-(

sub macro()
...
userform.show
...
end sub

donc je voudrai declare une variable (mavariable=1) au
bouton annuler...

sub macro()
...
userform.show
if mavariable = 1 then exit sub
...
end sub

-----Message d'origine-----
Bonjour

Plusieurs solutions

Déclarer la variable publique dans le module qui va
l'utiliser. Tu pourras

ainsi l'utiliser à travers tout le projet VBA, et donc
dans le module du

userform

Déclarer la variable publique dans le userform, puis la
récupérer dans le

module grâce à
userform1.MaVariable ( adapter le nom du userform et le
nom de la variable)


Déclarer la variable privée dans le userform, et la
passer en argument dans

la macro du module
Pour cela, déclarer la macro comme suit dans le module
sub MaMacro(MonParametre)
....
End sub

et dans le userform
Dim MaVariable
....
MaMacro MaVariable
....

Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci

"Albator V" a écrit dans le message de
news:13e101c4a600$e0cae2a0$
bonjour a tous,

voila dans une de mes macros, un userform souvre avec 2
boutons ( ok et annuler ). quand je clic sur ok je mets
une variable en memoire et idem pour le bouton annuler.
comment faire pour recuperer ces variables dans une
autre


macro (autre module)

merci davance



.




Avatar
Pierre Fauconnier
Dans le module standard ( pas celui de la userform, mais celui qui contient
ta macro, déclare, en haut de module, avant le premier Sub ou Function, et
après les éventuelles lignes Option...
public BoutonPousse as integer

Dans le userform en construction, double-clique sur le bouton Annuler et
dans la macro évènementielle, saisis
BoutonPousse = 1

Dans la macro qui lance la userform, tu peux utiliser
if boutonpousse=1 then End

Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci

"Albator V" a écrit dans le message de
news:148a01c4a60d$61fc8020$
jexplique le pourquoi du comment...

je lance une macro qui lance un userform. ce userform a 2
boutons (annuler et ok). quand je fais ok il continue ma
macro et quand je fais annuler il continue aussi... :-(

sub macro()
...
userform.show
...
end sub

donc je voudrai declare une variable (mavariable=1) au
bouton annuler...

sub macro()
...
userform.show
if mavariable = 1 then exit sub
...
end sub

-----Message d'origine-----
Bonjour

Plusieurs solutions

Déclarer la variable publique dans le module qui va
l'utiliser. Tu pourras

ainsi l'utiliser à travers tout le projet VBA, et donc
dans le module du

userform

Déclarer la variable publique dans le userform, puis la
récupérer dans le

module grâce à
userform1.MaVariable ( adapter le nom du userform et le
nom de la variable)


Déclarer la variable privée dans le userform, et la
passer en argument dans

la macro du module
Pour cela, déclarer la macro comme suit dans le module
sub MaMacro(MonParametre)
....
End sub

et dans le userform
Dim MaVariable
....
MaMacro MaVariable
....

Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci

"Albator V" a écrit dans le message de
news:13e101c4a600$e0cae2a0$
bonjour a tous,

voila dans une de mes macros, un userform souvre avec 2
boutons ( ok et annuler ). quand je clic sur ok je mets
une variable en memoire et idem pour le bouton annuler.
comment faire pour recuperer ces variables dans une
autre


macro (autre module)

merci davance



.




Avatar
Albator V
Merci beaucoup, ca marche impeccable...

merci encore pour tes lumieres, a bientot

-----Message d'origine-----
Dans le module standard ( pas celui de la userform, mais
celui qui contient

ta macro, déclare, en haut de module, avant le premier
Sub ou Function, et

après les éventuelles lignes Option...
public BoutonPousse as integer

Dans le userform en construction, double-clique sur le
bouton Annuler et

dans la macro évènementielle, saisis
BoutonPousse = 1

Dans la macro qui lance la userform, tu peux utiliser
if boutonpousse=1 then End

Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci

"Albator V" a écrit dans le message de
news:148a01c4a60d$61fc8020$
jexplique le pourquoi du comment...

je lance une macro qui lance un userform. ce userform a 2
boutons (annuler et ok). quand je fais ok il continue ma
macro et quand je fais annuler il continue aussi... :-(

sub macro()
....
userform.show
....
end sub

donc je voudrai declare une variable (mavariable=1) au
bouton annuler...

sub macro()
....
userform.show
if mavariable = 1 then exit sub
....
end sub

-----Message d'origine-----
Bonjour

Plusieurs solutions

Déclarer la variable publique dans le module qui va
l'utiliser. Tu pourras

ainsi l'utiliser à travers tout le projet VBA, et donc
dans le module du

userform

Déclarer la variable publique dans le userform, puis la
récupérer dans le

module grâce à
userform1.MaVariable ( adapter le nom du userform et le
nom de la variable)


Déclarer la variable privée dans le userform, et la
passer en argument dans

la macro du module
Pour cela, déclarer la macro comme suit dans le module
sub MaMacro(MonParametre)
....
End sub

et dans le userform
Dim MaVariable
....
MaMacro MaVariable
....

Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci

"Albator V" a écrit dans le message
de


news:13e101c4a600$e0cae2a0$
bonjour a tous,

voila dans une de mes macros, un userform souvre avec
2



boutons ( ok et annuler ). quand je clic sur ok je
mets



une variable en memoire et idem pour le bouton
annuler.



comment faire pour recuperer ces variables dans une
autre


macro (autre module)

merci davance



.




.