Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Affichage et masquage userform

0 views
Skip to first unread message

ttigre

unread,
May 28, 2000, 3:00:00 AM5/28/00
to
Bonjour à tous,

Je sais afficher un userform avec la méthode show. Mais je voudrais que
l'userform (indiquant un texte du genre "Veuillez patienter") affiché au
démarrage d'une procédure s'efface de lui-même à la fin de la procédure sans
que l'utilisateur soit obligé de cliquer dessus. Unload et Hide ne m'ont pas
encore permis d'y arriver. J'utilise Excel 97. Je souhaiterais qu'aucune
croix de suppression n'apparaisse en haut à droite de l'userform.

D'avance merci

ttigre

réponse dans le groupe

Laurent Longre

unread,
May 28, 2000, 3:00:00 AM5/28/00
to

Mets le code à exécuter pendant l'affichage du UserForm dans sa
procédure UserForm_Activate.

Exemple :

Private Sub UserForm_Activate()
DoEvents
Application.Wait Now + #12:00:10 AM#
MsgBox "Procédure terminée !"
Hide
End Sub

Le DoEvents au début est nécessaire pour s'assurer que le UserForm est
entièrement affiché avant l'exécution du code.

Laurent

ttigre

unread,
May 28, 2000, 3:00:00 AM5/28/00
to
Bonjour Laurent,

Dans la macro que j'utilise, au début j'affiche l'userform avec
Userform.show. A la fin de la macro j'avais mis Userform.hide. Ta macro
déclenche l'effacement de l'userform à une heure précise mais pas forcément
à la fin de la macro.

je crois que cele ne me convient pas, sinon j'ai un code Microsoft qui un
peu comme le tien efface l'userform 5 secondes après son affichage.


Merci tout de même

ttigre


"Laurent Longre" <laurent...@free.fr> a écrit dans le message news:
39315F10...@free.fr...

Laurent Longre

unread,
May 28, 2000, 3:00:00 AM5/28/00
to

Tiger,

Bien sûr, j'ai mis ce 'Application.Wait' juste pour le test, j'aurais pu
mettre n'importe quoi d'autre à la place. Ce qu'il faut que tu fasses,
c'est remplacer cette instruction par le contenu de ta procédure. Ou
alors par un appel à ta procédure:

Private Sub UserForm_Activate()
DoEvents
' ** Mets le code que tu veux exécuter ici **
' ** Ou alors : Call MaProcédure **


MsgBox "Procédure terminée !"
Hide
End Sub

Laurent

ttigre

unread,
May 29, 2000, 3:00:00 AM5/29/00
to
Bonjour Laurent,

Corrige-moi si je me trompe. J'ai mis ton (nouveau) code dans le code de
l'userform. Au déclenchement de la macro l'userform apparaît. Par contre
j'ai supprimé MsgBox "Procédure terminée" car là encore l'utilisateur devait
cliquer pour faire disparaître la boîte. Ainsi à la fin de la macro
l'userform devrait en principe disparaître de lui-même comme un grand (avec
le Hide). Je dis "devrait" car pour l'instant je n'ai pas testé en condition
réelle. Mais j'ai confiance.

Merci et au revoir

ttigre


0 new messages