Fermer Formulaire Actif [Résolu]

myseria 15 Messages postés samedi 27 mars 2004Date d'inscription 13 juillet 2005 Dernière intervention - 18 mai 2005 à 17:25 - Dernière réponse : myseria 15 Messages postés samedi 27 mars 2004Date d'inscription 13 juillet 2005 Dernière intervention
- 23 mai 2005 à 08:40
Bonjour!

J'ai un piti problème :
Je suis dans un formulaire qui permet la saisie d'un éditeur (form1), s'il l'éditeur existe déjà, un message nous avertis et nous propose de le compléter dans un autre formulaire (form2) : donc j'ai fait un Select Case avec vbYes ou VbNo... si on clique sur oui, le 2ème formulaire(form2) affiche le bon enregistrement et normalement mon formulaire de saisie (form1) devrait se fermer.
J'ai donc mis : DoCmd.Close acForm ("Form1") mais il me dit : "IMPOSSIBLE d'exécuter cette fonction pendant le traitement d'un formulaire ou état".

Donc je ne sais pas quoi faire.. j'ai tout essayé, mais pas moyen.

Merci de votre aide,
@++ bisoux




Léa
Afficher la suite 

11 réponses

dsomped 22 Messages postés mercredi 1 septembre 2004Date d'inscription 16 juin 2005 Dernière intervention - 20 mai 2005 à 18:27
+3
Utile
Et si tu le mets dans l'événement AfterUpdate au lieu de Sur Sortie ??
Cette réponse vous a-t-elle aidé ?  
jpleroisse 1788 Messages postés mardi 7 novembre 2000Date d'inscription 11 mars 2006 Dernière intervention - 18 mai 2005 à 17:31
0
Utile
Bonjour,


Pour fermer un formulaire "Form1" et en appeler un autre "Form2"

Unload Me
Form2Show

jpleroisse
cs_michelc 27 Messages postés lundi 27 janvier 2003Date d'inscription 18 mai 2005 Dernière intervention - 18 mai 2005 à 19:27
0
Utile
Je crois que tu es dans access et la gestiondes formulaire est différente.

Sous access un formulaire ne peux pas se fermer lui même donc il faut que cela soit ton form appélé qui le ferme lors de son chargement
myseria 15 Messages postés samedi 27 mars 2004Date d'inscription 13 juillet 2005 Dernière intervention - 19 mai 2005 à 08:16
0
Utile
Il n y a aucun évènement sous form2 qui permette de fermer form1. Et lorsque je dis sous form1 : si on clique sur oui (Select case vbYes) close form1... ben il me met le message d'erreur.
Donc impossible de fermer le form..

J'ai ensuite essayé de le cacher pour le fermer plus tard. Mais pas moyen il me dit que l'objet n'est pas défini...
J'pourrais donc jamais fermer ce form!? :(




Myseria
dsomped 22 Messages postés mercredi 1 septembre 2004Date d'inscription 16 juin 2005 Dernière intervention - 19 mai 2005 à 09:22
0
Utile
Bizarre, chez moi le code suivant marche parfaitement (sur Access 97)

Private Sub Commande13_Click()
Dim rep As Integer
rep = MsgBox("Voulez-vous ouvrir le formulaire 2 ?", vbYesNo)
If rep = vbYes Then
DoCmd.OpenForm "Formulaire2"
DoCmd.Close acForm, Me.name
End If
End Sub

N'y a-t-il pas une autre opération encore en cours sur ton From1 lors de la fermeture ?
myseria 15 Messages postés samedi 27 mars 2004Date d'inscription 13 juillet 2005 Dernière intervention - 19 mai 2005 à 09:33
0
Utile
J'ai un Do While Not rs.EOF ... c'est peut-être ça?
et le loop se trouve après le select et l'instruction close..

Le problème c'est que je ne peux pas enlever le Do While...
J'ai essayé le Unload Me.. impossible, il dit qu'il ne peut pas exécuter cette commande!




Léa
dsomped 22 Messages postés mercredi 1 septembre 2004Date d'inscription 16 juin 2005 Dernière intervention - 19 mai 2005 à 13:56
0
Utile
C'est certainement ça qui bloque: il ne peut pas fermer le formulaire puisqu'il n'a pas terminé l'éxécution de la boucle
peut-être pourrais-tu mettre dans le Select Case où tu veux fermer:
If rep = vbYes Then
Exit Do
DoCmd.OpenForm "Formulaire2"
DoCmd.Close acForm, Me.name
End If
myseria 15 Messages postés samedi 27 mars 2004Date d'inscription 13 juillet 2005 Dernière intervention - 20 mai 2005 à 11:12
0
Utile
C'est ce que j'ai essayé, et la il sort du Do, donc n'exécute pas mon action :(

Je suis dans un évènement "Sur sortie du champ"... la seule solution que j'ai trouvé, c'est de mettre un bouton à coté, comme ca, là ,il n y pas de problème.. mais c'est quand même moins pratique...




Myseria
dsomped 22 Messages postés mercredi 1 septembre 2004Date d'inscription 16 juin 2005 Dernière intervention - 20 mai 2005 à 14:01
0
Utile
et tu ne peux pas mettre
DoCmd.OpenForm "Formulaire2"
DoCmd.Close acForm, Me.name
après le Loop ?

ou alors au lieu de Exit Do mettre un "Goto OuvrirForm2"

et rajouter à la fin de ta procédure

OuvrirForm2:
DoCmd.OpenForm "Formulaire2"
DoCmd.Close acForm, Me.name
myseria 15 Messages postés samedi 27 mars 2004Date d'inscription 13 juillet 2005 Dernière intervention - 20 mai 2005 à 14:41
0
Utile
Je désespère j'ai essayé les deux facon... après le Loop il ne le prend pas en compte, et si je met le Goto OuvrirForm2 : ben... non il me met la meme erreur!

Merci beaucoup d'vouloir m'aider. Mais la je desespère
C'est peut etre impossible! lol

G pensé, c'est surement le fait sur c'est "Sur Sortie"... puisque Sur Click ca marche...




Léa
myseria 15 Messages postés samedi 27 mars 2004Date d'inscription 13 juillet 2005 Dernière intervention - 23 mai 2005 à 08:40
0
Utile
OHALALALA!
Trop merci ça marche!!!! C'était ça l'astuce!!!!

Merci merci merci merci!!! :)
Bonne journée!!!




Léa

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.