Annulation d'un Userform implique arrêt sub d'un autre Usf ?

Macpoy

XLDnaute Impliqué
bonsoir le forum,
sauriez vous me dire quelle syntaxe (VBA) me permettrait de stopper une procédure ? :cool:
petites explications :
j'ouvre un premier formulaire Usf1, lorsque je clique sur le bouton OK de cet Usf1 cela m'ouvre un nouveau formulaire Usf2 sans pour autant avoir fini le sub ok_click de l'usf1. si toutefois je désire annuler la procédure en cours, je clique sur le bouton annuler de l'Usf2.
mais là est le but de ma venue sur cet excellent site, je souhaite aussi faire un exit sub de sub ok_click de l'usf1

voici la même chose en VBA raccourci :

pour l'Usf1
sub ok_click()
bla bla blabla ......
bla bla blabla ......

Usf2.show

bla bla blabla ......
bla bla blabla ......

end sub

pour l'usf2
sub annuler_click()
unload Me
end sub
super !!! j'ai stoppé la procédure de l'Usf2.... yessss !!!!!!!
mais,,,,, c'est là que ça se complique il poursuit le sub de l'Usf1, alors que je souhaite tout arréter (sans bien sur en arriver à Application.Quit !!!!).

je vous remercie d'avance pour les astuces que vous aurez la gentillesse de me proposer.
 

BERRACHED said

XLDnaute Accro
Re : Annulation d'un Userform implique arrêt sub d'un autre Usf ?

Salut,Macpoy

j'ai rien compris a quoi consiste ta démarche ? de bloqué un Usf en pleins exécution mais si tu veux par contre s'en assurer d'une bonne saisies a mon avis il faut simplement utiliser les MsgBox Vbcrf yes No comme ça tu peut arrêter l'exécution de la procédure.

Coprdialement
 

Macpoy

XLDnaute Impliqué
Re : Annulation d'un Userform implique arrêt sub d'un autre Usf ?

Re le forum,
bonsoir BERRACHED said,
ma démarche, telle que je l'imagine : le premier Usf1 permet de remplir une première partie d'une feuille, l'Usf2 complète le remplissage;
mais si au cours de l'utilisation de l'usf2 je souhaite tout arrêter (sans quitter excel) je fais comment ? sachant que l'ouverture de l'usf2 est déclenchée par une procédure de l'usf1 qui ne se termine qu'à la validation de l'usf2.
bouton valider de usf2 => continuité procédure usf1
bouton annuler de usf2 => arrêt de toutes les procédures.
à l'heure qu'il est je suis pas sure d'être très clair !!!!
mais je ne serais pas loin pour completer;
merci encore
 

Pierrot93

XLDnaute Barbatruc
Re : Annulation d'un Userform implique arrêt sub d'un autre Usf ?

Bonjour Macpoy, Said

si j'ai bien compris, code ci dessous à placer dans le module de ton USF2, ferme usf1 et usf2 dès click, attention réinitialise également toutes les variables :

Code:
Private Sub CommandButton1_Click()
      End
End Sub

bonne journée
@+
 

Macpoy

XLDnaute Impliqué
Re : Annulation d'un Userform implique arrêt sub d'un autre Usf ?

bonjour le forum,
bonjour Pierrot93, BERRACHED said

trois lettres !!!! on pouvait pas faire plus simple !!
merci beaucoup, c'est exactement ce que je cherchais.
bonne journée.
 

Pierrot93

XLDnaute Barbatruc
Re : Annulation d'un Userform implique arrêt sub d'un autre Usf ?

Re,

petite précision tout de même, cela pourrait servir à d'autres, on n'est pas obligé d'être aussi radicale (le "End"), on peut également procéder ainsi :

code à placer dans le module de l'usf 2, sur le bouton annuler :

Code:
Private Sub CommandButton1_Click()
    Me.Hide
    Unload UserForm1
    Unload Me
End Sub

@+
 

Discussions similaires