jen_peplu
Messages postés33Date d'inscriptionsamedi 4 décembre 2010StatutMembreDernière intervention25 mars 2012
-
23 avril 2011 à 11:16
Bonjour,
Comment sortir d'un compte à rebours quand je clique sur le bouton annulé ?
J'ai un UserForm avec un label dans lequel se décompte un compte à rebours, un bouton de validation et un bouton d'annulation.
Quand je fais appel à mon UserForm le compte à rebours se met en service.
1 - Si je clique sur le CommandButton1_Click le UserForm se ferme et appelle une autre procédure (ici j'ai mis un msgbox).
2 - Si le décompte se poursuit jusqu'à zéro le UserForm se ferme et appelle une autre procédure (la même que CommandButton1_Click jusque là tout va bien).
3 - Si je clique sur le CommandButton2_Click pour annuler, le UserForm se ferme mais le compte à rebours se poursuit en tache de fond et appelle la procédure 1 à la fin du décompte.
Voici les codes :
Option Explicit
Public rebours
Sub CRebours()
Dim TempsPause, debut, temps, arret
Do While Timer < debut + TempsPause
If Timer > temps Then
temps = temps + 1
rebours = rebours - 1
UserForm2.Label1.Caption = rebours
End If
DoEvents
If arret = -2 Then Exit Do
If rebours = -1 Then Exit Do
Loop
MsgBox "Opération Réussie"
End Sub
Public Sub rr()
UserForm2.Show
End Sub
Option Explicit
Public Sub UserForm_Activate()
Call CRebours
Unload Me
End Sub
Private Sub CommandButton1_Click()
rebours = -1
Unload UserForm2
End Sub
Private Sub CommandButton2_Click()
Dim arret
Unload UserForm2
arret = -2
MsgBox "Opération Annulée"
Exit Sub
End Sub
J'espère être assez clair, je continue à chercher, mais j'ai besoin d'aide, dois-je reprendre toutes ma procédure ou ne suis-je pas loin de la vérité, merci ?