Fermer Formulaire Actif [Résolu]

Messages postés
15
Date d'inscription
samedi 27 mars 2004
Dernière intervention
13 juillet 2005
- - Dernière réponse : myseria
Messages postés
15
Date d'inscription
samedi 27 mars 2004
Dernière intervention
13 juillet 2005
- 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

Meilleure réponse
Messages postés
22
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
16 juin 2005
1
Merci
Et si tu le mets dans l'événement AfterUpdate au lieu de Sur Sortie ??

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 97 internautes nous ont dit merci ce mois-ci

Messages postés
1788
Date d'inscription
mardi 7 novembre 2000
Dernière intervention
11 mars 2006
0
Merci
Bonjour,


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

Unload Me
Form2Show

jpleroisse
Messages postés
27
Date d'inscription
lundi 27 janvier 2003
Dernière intervention
18 mai 2005
0
Merci
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
Messages postés
15
Date d'inscription
samedi 27 mars 2004
Dernière intervention
13 juillet 2005
0
Merci
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
Messages postés
22
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
16 juin 2005
0
Merci
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 ?
Messages postés
15
Date d'inscription
samedi 27 mars 2004
Dernière intervention
13 juillet 2005
0
Merci
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
Messages postés
22
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
16 juin 2005
0
Merci
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
Messages postés
15
Date d'inscription
samedi 27 mars 2004
Dernière intervention
13 juillet 2005
0
Merci
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
Messages postés
22
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
16 juin 2005
0
Merci
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
Messages postés
15
Date d'inscription
samedi 27 mars 2004
Dernière intervention
13 juillet 2005
0
Merci
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
Messages postés
15
Date d'inscription
samedi 27 mars 2004
Dernière intervention
13 juillet 2005
0
Merci
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.