Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel italien.
Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance de
prendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel italien.
Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance de
prendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel italien.
Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance de
prendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
bonjour Rémi,
Label1.Caption = 1
??
y a t'il un erreur de transcription sur cette ligne ?
isabelle
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel
italien.
Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux
macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le
VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas
encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester
pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance
de
prendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
bonjour Rémi,
Label1.Caption = 1
??
y a t'il un erreur de transcription sur cette ligne ?
isabelle
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel
italien.
Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux
macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le
VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas
encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester
pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance
de
prendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
bonjour Rémi,
Label1.Caption = 1
??
y a t'il un erreur de transcription sur cette ligne ?
isabelle
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel
italien.
Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux
macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le
VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas
encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester
pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance
de
prendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
Non, c'est bien comme ça, mais cela a peu d'importance je crois, cela ne
peut pas influencer sur la variable.
Rémi.
"isabelle" a écrit dans le message de
news:bonjour Rémi,
Label1.Caption = 1
??
y a t'il un erreur de transcription sur cette ligne ?
isabelle
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel
italien.Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux
macros.la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le
VBEest ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas
encoreréussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester
pourvoir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance
deprendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
Non, c'est bien comme ça, mais cela a peu d'importance je crois, cela ne
peut pas influencer sur la variable.
Rémi.
"isabelle" <as.isabellevIE@videotron.ca> a écrit dans le message de
news:41A208FE.E8A4B176@videotron.ca...
bonjour Rémi,
Label1.Caption = 1
??
y a t'il un erreur de transcription sur cette ligne ?
isabelle
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel
italien.
Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux
macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le
VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas
encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester
pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance
de
prendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
Non, c'est bien comme ça, mais cela a peu d'importance je crois, cela ne
peut pas influencer sur la variable.
Rémi.
"isabelle" a écrit dans le message de
news:bonjour Rémi,
Label1.Caption = 1
??
y a t'il un erreur de transcription sur cette ligne ?
isabelle
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel
italien.Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux
macros.la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le
VBEest ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas
encoreréussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester
pourvoir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance
deprendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
-----Message d'origine-----
Bonjour à tous,
Voila je fais souvent des interventions sur le news
Microsoft Excel italien.
Et ces derniers jours nous avons rencontré ce problème,
qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en
1 avec deux macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la
variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la
variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à
zero que si le VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous
n'avons pas encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous
demande de tester pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à
déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare.
Merci d'avance de
prendre le tps de tester et de me donner vos impressions
et suggestions.
Rémi.
.
-----Message d'origine-----
Bonjour à tous,
Voila je fais souvent des interventions sur le news
Microsoft Excel italien.
Et ces derniers jours nous avons rencontré ce problème,
qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en
1 avec deux macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la
variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la
variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à
zero que si le VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous
n'avons pas encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous
demande de tester pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à
déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare.
Merci d'avance de
prendre le tps de tester et de me donner vos impressions
et suggestions.
Rémi.
.
-----Message d'origine-----
Bonjour à tous,
Voila je fais souvent des interventions sur le news
Microsoft Excel italien.
Et ces derniers jours nous avons rencontré ce problème,
qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en
1 avec deux macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la
variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la
variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à
zero que si le VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous
n'avons pas encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous
demande de tester pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à
déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare.
Merci d'avance de
prendre le tps de tester et de me donner vos impressions
et suggestions.
Rémi.
.
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel italien.
Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance de
prendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel italien.
Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance de
prendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel italien.
Et ces derniers jours nous avons rencontré ce problème, qui au premier
regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux macros.
la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se remet a
zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si le VBE
est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas encore
réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de tester pour
voir si vous aussi rencontrez ce pb, et si quelqu'un à déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci d'avance de
prendre le tps de tester et de me donner vos impressions et suggestions.
Rémi.
Rémi,
Tu ne peux pas considérer que ta variable Public Num aura une
longévité éternelle (contrairement à ce qui est coutume dans d'autres
langages).
En VBA, il existe des événements (l'instruction End, un 'Reset' dans
l'environnement VBE, la fermeture d'un classeur) qui réinitialise tes
variables globales à zéro.
Si tu as absolument besoin de t'assurer que ta variable conserve sa
valeur même en cas d'arrêt de procédure, tu devrais utiliser un Nom
qui réfère à une cellule (celle-ci pourrait être située dans une
ligne cachée, ou une feuille cachée). Ainsi, après avoir défini ce
nom (Ctrl-F3, "UnNumero"), tu y accèdes dans ton code par
Range("UnNumero")
Ça continue alors de s'incrémenter même en cas de pépin et d'arrêt
intempestif (End) de ton code.
Salutations,
Daniel M.
"Rémi" <masremi(senza)@aol.com> wrote in message
news:Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel
italien. Et ces derniers jours nous avons rencontré ce problème, qui
au premier regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux
macros. la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se
remet a zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si
le VBE est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas
encore réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de
tester pour voir si vous aussi rencontrez ce pb, et si quelqu'un à
déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci
d'avance de prendre le tps de tester et de me donner vos impressions
et suggestions.
Rémi.
Rémi,
Tu ne peux pas considérer que ta variable Public Num aura une
longévité éternelle (contrairement à ce qui est coutume dans d'autres
langages).
En VBA, il existe des événements (l'instruction End, un 'Reset' dans
l'environnement VBE, la fermeture d'un classeur) qui réinitialise tes
variables globales à zéro.
Si tu as absolument besoin de t'assurer que ta variable conserve sa
valeur même en cas d'arrêt de procédure, tu devrais utiliser un Nom
qui réfère à une cellule (celle-ci pourrait être située dans une
ligne cachée, ou une feuille cachée). Ainsi, après avoir défini ce
nom (Ctrl-F3, "UnNumero"), tu y accèdes dans ton code par
Range("UnNumero")
Ça continue alors de s'incrémenter même en cas de pépin et d'arrêt
intempestif (End) de ton code.
Salutations,
Daniel M.
"Rémi" <masremi(senza)@aol.com> wrote in message
news:ujpDggK0EHA.3044@TK2MSFTNGP14.phx.gbl...
Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel
italien. Et ces derniers jours nous avons rencontré ce problème, qui
au premier regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux
macros. la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se
remet a zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si
le VBE est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas
encore réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de
tester pour voir si vous aussi rencontrez ce pb, et si quelqu'un à
déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci
d'avance de prendre le tps de tester et de me donner vos impressions
et suggestions.
Rémi.
Rémi,
Tu ne peux pas considérer que ta variable Public Num aura une
longévité éternelle (contrairement à ce qui est coutume dans d'autres
langages).
En VBA, il existe des événements (l'instruction End, un 'Reset' dans
l'environnement VBE, la fermeture d'un classeur) qui réinitialise tes
variables globales à zéro.
Si tu as absolument besoin de t'assurer que ta variable conserve sa
valeur même en cas d'arrêt de procédure, tu devrais utiliser un Nom
qui réfère à une cellule (celle-ci pourrait être située dans une
ligne cachée, ou une feuille cachée). Ainsi, après avoir défini ce
nom (Ctrl-F3, "UnNumero"), tu y accèdes dans ton code par
Range("UnNumero")
Ça continue alors de s'incrémenter même en cas de pépin et d'arrêt
intempestif (End) de ton code.
Salutations,
Daniel M.
"Rémi" <masremi(senza)@aol.com> wrote in message
news:Bonjour à tous,
Voila je fais souvent des interventions sur le news Microsoft Excel
italien. Et ces derniers jours nous avons rencontré ce problème, qui
au premier regard parait tout simple mais incompréhensible.
Voilà : le but est de faire une variable que va de 1 en 1 avec deux
macros. la macro un augmente de un la variable
la macro deux ouvre un useform et augmente de 1 la variable
sur l'userform, suelement un objet label.
Pb : sur la macro 1 tout va bien, sur la macro 2, la variable se
remet a zero toute seule.
Mais chose encore plus étrange, est qu'elle ne se met à zero que si
le VBE est ouvert, sinon, il n'y a pas de pb !?
Ce phénomène ne se fait pas sur tout les ordi, mas nous n'avons pas
encore réussi à comprendre sur quel type le pb aparait ou non.
Voila en syntèse, je vous metle code ci jont, et vous demande de
tester pour voir si vous aussi rencontrez ce pb, et si quelqu'un à
déjà vu ce pb.
Dans un module :
Public Num As Integer
Sub IncrementaNum1()
Num = Num + 1
Range("A1") = Num
End Sub
Sub IncrementaNum2()
Num = Num + 1
UserForm1.Show
Range("A1") = Num
End Sub
dans l'userform
Private Sub UserForm_Click()
Label1.Caption = 1
End Sub
Voila c'est tout !!! c'est tout bête mais tres bizzare. Merci
d'avance de prendre le tps de tester et de me donner vos impressions
et suggestions.
Rémi.
c'est en effet exactement ce que Laurent Longre a développé dans son exposé
"HiddenName"
http://longre.free.fr/pages/prog/hnamespace.htm#VBA
../..
noms masqués, indétectables par les autres programmes,
et dont la durée de vie est celle de la session Excel en cours
../..
c'est en effet exactement ce que Laurent Longre a développé dans son exposé
"HiddenName"
http://longre.free.fr/pages/prog/hnamespace.htm#VBA
../..
noms masqués, indétectables par les autres programmes,
et dont la durée de vie est celle de la session Excel en cours
../..
c'est en effet exactement ce que Laurent Longre a développé dans son exposé
"HiddenName"
http://longre.free.fr/pages/prog/hnamespace.htm#VBA
../..
noms masqués, indétectables par les autres programmes,
et dont la durée de vie est celle de la session Excel en cours
../..