Pb test userform

Signaler
Messages postés
18
Date d'inscription
lundi 28 mars 2005
Statut
Membre
Dernière intervention
29 juillet 2009
-
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
-
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

Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
55
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
Messages postés
18
Date d'inscription
lundi 28 mars 2005
Statut
Membre
Dernière intervention
29 juillet 2009

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?
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
55
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