Pb test userform

cs_frippons Messages postés 18 Date d'inscription lundi 28 mars 2005 Statut Membre Dernière intervention 29 juillet 2009 - 9 févr. 2009 à 17:41
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 10 févr. 2009 à 07:46
Bonjour à tous,

Je sais que ma demande va paraitre ultra simple mais j'ai un petit soucis sous une macro excel.
Je souhaiterai savoir comment tester si une userform est ouverte ou non. Du genre

test= userform.ouverte
si test=vrai
   action a
sinon
   action b

Merci d'avance.
DSL pour cette question ridicule

3 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
9 févr. 2009 à 20:36
Salut,
Dans le Form_Load (ou Activate) tu mets une variable globale (déclarée dans un module) à True (que tu remet à False dans le Unload ou terminate).

Et tu testes cette variable.

@+: Ju£i€n
Pensez: Réponse acceptée
0
cs_frippons Messages postés 18 Date d'inscription lundi 28 mars 2005 Statut Membre Dernière intervention 29 juillet 2009
9 févr. 2009 à 21:11
Salut

Merci de ta réponse mais peux tu  être un peu plus explicite? Je suis dans le cadre d'une macro excel
donc si je comprend bien, il faut créer une variable global du genre:

public test as booleen

et dés que j'entre dans el module je le fais
test=true

et à la fin je fait

test=false

C'est bien ca?
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
10 févr. 2009 à 07:46
Salut,
NOTE pour tes futures question si tu utilises EXCEL (VBA) penses à poster ta question dans la section du forum dédiée à VBA et non celle dédiée à VB.NET (langage différents).

Pour la déclaration: oui c'est tout a fait ca.

En revanche il faut que tu agisses sur cette variable dans le User_Form.

Un truc du style

'Code Dans un module
Public UserFormLoaded As Boolean

'Code dans le UserForm à surveiller
Private Sub UserForm_Activate()
   UserFormLoaded = True
End Sub<hr />
Private Sub UserForm_Terminate()
   UserFormLoaded = False
End Sub<hr />

'Quand tu souhaites faire le test (n'importe ou dans le code)

If UserFormLoaded Then

Else

End If

@+: Ju£i€n
Pensez: Réponse acceptée
0
Rejoignez-nous