"End" sur UF
Résolu/Fermé
touroul
Messages postés
465
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
29 janvier 2024
-
15 sept. 2015 à 23:27
touroul Messages postés 465 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 29 janvier 2024 - 18 sept. 2015 à 21:37
touroul Messages postés 465 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 29 janvier 2024 - 18 sept. 2015 à 21:37
A voir également:
- "End" sur UF
- Exemple planning 1 week end sur 3 - Télécharger - Outils professionnels
- Combien de week-end peut on travailler par mois ✓ - Forum Vos droits sur internet
- Directx end user runtime web installer - Télécharger - Pilotes & Matériel
- End sub attendu - Forum Access
- Planning pour 3 personnes 7/7 - Forum Bureautique
14 réponses
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
16 sept. 2015 à 07:50
16 sept. 2015 à 07:50
Bonjour,
Comme ceci:
Comme ceci:
Private Sub test() MsgBox "Terminé" End Sub Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) test End Sub
touroul
Messages postés
465
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
29 janvier 2024
15
16 sept. 2015 à 09:38
16 sept. 2015 à 09:38
Bonjour Le Pivert
Merci pour l'aide.
J'ai essayé d'adapter mais j'ai quelques soucis :
En m'inspirant de ton code et de ce que j'ai vu sur ton site, j'ai ajouté à tous mes UF le code :
Dans ce cas, l'UF se ferme bien mais la macro principale ("Import") continue.
Serait-il possible de placer un code dans "Import" qui arrêterait l'exécution de cette macro principale (Call et UF compris), lorsqu'on clique sur la croix rouge d'un des UF ?
Pardon mais je veux vraiment comprendre !
D'avance merci
Merci pour l'aide.
J'ai essayé d'adapter mais j'ai quelques soucis :
En m'inspirant de ton code et de ce que j'ai vu sur ton site, j'ai ajouté à tous mes UF le code :
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then Cancel = True
MsgBox "Opération abandonnée", vbInformation, ""
End
End Sub
Dans ce cas, l'UF se ferme bien mais la macro principale ("Import") continue.
Serait-il possible de placer un code dans "Import" qui arrêterait l'exécution de cette macro principale (Call et UF compris), lorsqu'on clique sur la croix rouge d'un des UF ?
Pardon mais je veux vraiment comprendre !
D'avance merci
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
Modifié par michel_m le 16/09/2015 à 11:00
Modifié par michel_m le 16/09/2015 à 11:00
Bonjour
A voir selon ton contexte
"End" rend la main au systeme pour Toutes les macros> en cours
Michel
A voir selon ton contexte
"End" rend la main au systeme pour Toutes les macros> en cours
Michel
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
16 sept. 2015 à 11:15
16 sept. 2015 à 11:15
bonjour michel_m,
Sur le site indiqué, tout est expliqué!
Sur le site indiqué, tout est expliqué!
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
>
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
16 sept. 2015 à 12:10
16 sept. 2015 à 12:10
Excuse moi d'^tre inntervenu dans TA discussion.
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
>
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
17 sept. 2015 à 08:51
17 sept. 2015 à 08:51
Il n'y a pas de mal, mais je pense que le site est très bien fait et se suffit à lui même. Il faut juste lire les différents paragraphes.
Cordialement
Cordialement
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
16 sept. 2015 à 11:11
16 sept. 2015 à 11:11
Tu n'as pas tout lu:
https://silkyroad.developpez.com/VBA/UserForm/#LIII-B
Form principale UserForm1
Autre Form UserForm2
a mettre dans UserForm2:
https://silkyroad.developpez.com/VBA/UserForm/#LIII-B
Form principale UserForm1
Autre Form UserForm2
a mettre dans UserForm2:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) UserForm2.Hide Unload UserForm1 End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
touroul
Messages postés
465
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
29 janvier 2024
15
Modifié par touroul le 16/09/2015 à 13:03
Modifié par touroul le 16/09/2015 à 13:03
Merci d'avoir pris ce problème à coeur c'est sympa.
C'est réglé, je n'avais pas mis le End au bon endroit :
Voici mon code à mettre dans chaque UF (si ça peut servir) :
Bonne journée à vous et encore merci
C'est réglé, je n'avais pas mis le End au bon endroit :
Voici mon code à mettre dans chaque UF (si ça peut servir) :
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
MsgBox "Opération abandonnée", vbInformation, ""
Call Reaffiche
End
End Sub
Bonne journée à vous et encore merci
touroul
Messages postés
465
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
29 janvier 2024
15
16 sept. 2015 à 14:49
16 sept. 2015 à 14:49
Oups, j'ai fermé un peu vite.
Je ne sais trop pourquoi, mais depuis ce code, lorsque je clique sur Suivant pour passer au reste de la macro principale, il me remet tout de suite sur le MsgBox "Opération abandonnée" et la macro s'arrête.
Un peu comme si le UserForm_QueryClose était prioritaire sur le CommandButton1_Click.
Voici le code des UF :
Merci d'avance, on va y arriver
Je ne sais trop pourquoi, mais depuis ce code, lorsque je clique sur Suivant pour passer au reste de la macro principale, il me remet tout de suite sur le MsgBox "Opération abandonnée" et la macro s'arrête.
Un peu comme si le UserForm_QueryClose était prioritaire sur le CommandButton1_Click.
Voici le code des UF :
Private Sub CommandButton1_Click()
Unload UFSelect1
End Sub
Private Sub UserForm_Click()
End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
MsgBox "Opération abandonnée", vbInformation, ""
Call Reaffiche
End
End Sub
Merci d'avance, on va y arriver
touroul
Messages postés
465
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
29 janvier 2024
15
16 sept. 2015 à 21:21
16 sept. 2015 à 21:21
Un p'tit up
Please !
Mes UF se ferment en appuyant sur suivant !
Merci !
Please !
Mes UF se ferment en appuyant sur suivant !
Merci !
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
17 sept. 2015 à 08:49
17 sept. 2015 à 08:49
Dans ton cas, il ne faut pas utiliser End. Je t'ai donné un exemple à utiliser.
Avec End tu stoppes tout!
Avec End tu stoppes tout!
touroul
Messages postés
465
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
29 janvier 2024
15
17 sept. 2015 à 14:07
17 sept. 2015 à 14:07
Bonjour Le Pivert
J'avais essayé le code proposé plus haut, mais il n'agissait que sur le UF rattaché et non sur l'ensemble de la macro.
Je me permets d'envoyer un fichier exemple :
Lorsque je clique sur Suivant, l'UF se ferme.
Par contre, lorsque je clique sur la croix, tout s'arrête, et ça c'est correct !
Ça sera peut-être plus compréhensible ainsi :
http://www.cjoint.com/c/EIrmfZtsxYw
A plus, merci !
J'avais essayé le code proposé plus haut, mais il n'agissait que sur le UF rattaché et non sur l'ensemble de la macro.
Je me permets d'envoyer un fichier exemple :
Lorsque je clique sur Suivant, l'UF se ferme.
Par contre, lorsque je clique sur la croix, tout s'arrête, et ça c'est correct !
Ça sera peut-être plus compréhensible ainsi :
http://www.cjoint.com/c/EIrmfZtsxYw
A plus, merci !
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
17 sept. 2015 à 14:54
17 sept. 2015 à 14:54
Je n'ai pas très bien compris ce que tu voulais faire. Voici une correction pour que tes macros se déclenchent. J'ai mis des MsgBox pour confirmer:
http://www.cjoint.com/c/EIrm0u41SUQ
http://www.cjoint.com/c/EIrm0u41SUQ
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
17 sept. 2015 à 15:00
17 sept. 2015 à 15:00
J'ai oublié de corriger la macro Import:
Sub Import() Call MacroSuppr UserForm1.Show End Sub
touroul
Messages postés
465
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
29 janvier 2024
15
17 sept. 2015 à 18:32
17 sept. 2015 à 18:32
Merci bien Le Pivert
Ça fonctionne mieux mais pas encore top.
J'ai compris que tu lançais l'UF2 par appel du bouton Suivant dans l'UF1, ça c'est malin, je n' y avais pas pensé.
Par contre, le bouton Suivant de l'UF2 abandonne la procédure, donc tu rencontres le même problème que moi.
@ plus
Ça fonctionne mieux mais pas encore top.
J'ai compris que tu lançais l'UF2 par appel du bouton Suivant dans l'UF1, ça c'est malin, je n' y avais pas pensé.
Par contre, le bouton Suivant de l'UF2 abandonne la procédure, donc tu rencontres le même problème que moi.
@ plus
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
17 sept. 2015 à 18:42
17 sept. 2015 à 18:42
Par contre, le bouton Suivant de l'UF2 abandonne la procédure, donc tu rencontres le même problème que moi.
le problème est que je ne sais pas ce que tu veux faire avec ce bouton suivant dans l'UserForm2.
Où veux-tu aller?
le problème est que je ne sais pas ce que tu veux faire avec ce bouton suivant dans l'UserForm2.
Où veux-tu aller?
touroul
Messages postés
465
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
29 janvier 2024
15
18 sept. 2015 à 10:29
18 sept. 2015 à 10:29
Bonjour Le Pivert
Ne crois pas que j'ai lâché l'affaire ! Je continue mes essais, je posterai quand j'y serai parvenu dans ma macro qui fait 3 pages, je dois tout tester.
@plus
Ne crois pas que j'ai lâché l'affaire ! Je continue mes essais, je posterai quand j'y serai parvenu dans ma macro qui fait 3 pages, je dois tout tester.
@plus
touroul
Messages postés
465
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
29 janvier 2024
15
18 sept. 2015 à 13:04
18 sept. 2015 à 13:04
Je reviens là-dessus malgré le délai pour comprendre.
Je résume déjà l'objectif : dans ma macro principale "Import", il y a différentes étapes et quelques UF à ouvrir dans cet ordre :
Dans chaque UF, je cherche comment utiliser le UserForm_QueryClose pour lancer une macro "Reaffiche" en abandonnant la macro "Import" (par fermeture à la croix rouge).
Dans ta proposition, tu mets les Call dans chaque UF, ce qui me pose problème.
Comment enchaîner les étapes ? Dans l'exemple ci-dessous, le bouton Suivant de l'UF1 abandonne l'opération :
https://www.cjoint.com/c/EIsld1LReh2
Ça doit être assez basique mais ça me dépasse.
D'avance merci pour le suivi :)
Je résume déjà l'objectif : dans ma macro principale "Import", il y a différentes étapes et quelques UF à ouvrir dans cet ordre :
Sub Import()
Call Etape1
UserForm1.Show
Call Etape2
UserForm2.Show
End sub
Dans chaque UF, je cherche comment utiliser le UserForm_QueryClose pour lancer une macro "Reaffiche" en abandonnant la macro "Import" (par fermeture à la croix rouge).
Dans ta proposition, tu mets les Call dans chaque UF, ce qui me pose problème.
Comment enchaîner les étapes ? Dans l'exemple ci-dessous, le bouton Suivant de l'UF1 abandonne l'opération :
https://www.cjoint.com/c/EIsld1LReh2
Ça doit être assez basique mais ça me dépasse.
D'avance merci pour le suivi :)
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
18 sept. 2015 à 13:57
18 sept. 2015 à 13:57
Dans l'UserForm1:
Dans l'UserForm2:
Private Sub CommandButton1_Click() UserForm2.Show 'à remettre en macro Import si possible Unload UserForm1 End Sub Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) MsgBox "Opération abandonnée", vbInformation, "" Call Reaffiche End End Sub
Dans l'UserForm2:
Private Sub CommandButton1_Click() Unload UserForm2 End Sub Private Sub UserForm_Initialize() Etape2 End Sub Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) MsgBox "Opération abandonnée", vbInformation, "" Call Reaffiche End End Sub
touroul
Messages postés
465
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
29 janvier 2024
15
Modifié par touroul le 18/09/2015 à 21:38
Modifié par touroul le 18/09/2015 à 21:38
Aaaaaaah ... ça y est enfin après quelques palabres et ton aide.
Dans le module principal "Import" j'ai mis le début :
Dans l'UF1 j'ai mis :
Dans le dernier UF j'ai mis :
Et tout réagit comme souhaité.
Pas facile la subtile différence entre UF.Hide et Unload UF !
Je ferme pour de bon.
Merci bien Le Pivert !
Dans le module principal "Import" j'ai mis le début :
Sub Import()
UFSelect1.Show
End Sub
Dans l'UF1 j'ai mis :
Private Sub CommandButton1_Click()
Call Macro1
UserForm1.Hide
UserForm2.Show
End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then MsgBox "Opération abandonnée", vbInformation, ""
Call Reaffiche
End
End Sub
Dans l'UF2 j'ai mis :
Private Sub CommandButton1_Click()
Call Macro2
Userform2.Hide
Userform3.Show
End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then MsgBox "Opération abandonnée", vbInformation, ""
Call Reaffiche
End
End Sub
Dans le dernier UF j'ai mis :
Private Sub CommandButton1_Click()
Unload Useform3
End Sub
Private Sub UserForm_Click()
End Sub
Et tout réagit comme souhaité.
Pas facile la subtile différence entre UF.Hide et Unload UF !
Je ferme pour de bon.
Merci bien Le Pivert !
16 sept. 2015 à 08:18
https://silkyroad.developpez.com/VBA/UserForm/
@+