Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

fermer form ferme appli !

10 réponses
Avatar
Dad
Bonjour,

J'ai un form avec un bouton qui le ferme et doit en ouvrir un autre.
Depuis peu, en cliquant sur ce bouton tout se ferme, appli et Access compris
!
Avez-vous une idée de ce qu'il se passe ?
Merci.

10 réponses

Avatar
Jessy Sempere [MVP]
Bonjour

Envois le code utiliser par ton bouton, ce sera plus simple...

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://www.mpfa.info/
------------------------------------
"Dad" a écrit dans le message de
news:%
Bonjour,

J'ai un form avec un bouton qui le ferme et doit en ouvrir un autre.
Depuis peu, en cliquant sur ce bouton tout se ferme, appli et Access
compris

!
Avez-vous une idée de ce qu'il se passe ?
Merci.




Avatar
Argyronet
Bonjour,

Humm, pas si simple et votre message est trop vague.
Quel code est affecté au bouton ?
Quel code est affecté à l'événement Form_Close() s'il existe ?
Votre formulaire contient-il des contrôles spéciaux autre que ceux d'Access...
--
Argy
http://argyronet.developpez.com/

Ce qui donne son sens à la communication, c´est la réponse que l´on obtient.
Si vous n´obtenez pas la réponse voulue, communiquez différemment



Bonjour,

J'ai un form avec un bouton qui le ferme et doit en ouvrir un autre.
Depuis peu, en cliquant sur ce bouton tout se ferme, appli et Access compris
!
Avez-vous une idée de ce qu'il se passe ?
Merci.





Avatar
Dad
"Jessy Sempere [MVP]" a écrit dans le message de
news: 446349c6$
Bonjour

Envois le code utiliser par ton bouton, ce sera plus simple...


Salut,
Le voici :

' DEBUT

Private Sub bFermer_Click()

On Error GoTo Err_BFermer_Click

' qq validations

If Me!AT01 = "88" Then

Me!IDM = "oui"

Else

Me!IDM = "non"

End If

If Me!AT02 = "88" Then

Me!ACT = "oui"

Else

Me!ACT = "non"

End If

' sauve enregistrement

DoCmd.RunCommand acCmdSaveRecord

Dim stDocName As String

Dim stLinkCriteria As String

stDocName = "FHemo"

stLinkCriteria = "[CDHemo]=" & Me![CDHemo]

' ouvre le form lié

DoCmd.OpenForm stDocName, , , stLinkCriteria

' ferme le form

DoCmd.Close acForm, "fhemoatcd"

Exit_BFermer_Click:

Exit Sub

Err_BFermer_Click:

MsgBox Err.Description

Resume Exit_BFermer_Click


End Sub

' FIN

Avatar
Argyronet
C'est bizarre car ton code n'a rien de supsect en apparence...
Que donne celui-ci ?

Private Sub bFermer_Click()
Dim vntCHDEmo As Variant
Dim stLinkCriteria As String

On Error GoTo ErrHandler
Me!IDM = IIf(Me!AT01 = "88", "Oui", "Non")
Me!ACT = IIf(Me!AT02 = "88", "Oui", "Non")

vntCHDEmo = Me!CDHemo
If Not IsNull(vntCHDEmo) Then
stLinkCriteria = "[CDHemo]=" & Me!CDHemo
Me.Requery
DoCmd.Close acForm, Me.Name
DoCmd.OpenForm "FHemo", , , stLinkCriteria
Else
MsgBox "CDHemo est requis !", 48
End If
ExitHandler:
Exit Sub
ErrHandler:
MsgBox Err.Description, , Err.Number
Resume ExitHandler
End Sub

Je l'ai juste soulagé en lignes et substitué le SaveRecord par un Requery et
fermé la source avant d'ouvrir l'autre mais rien ne garantie que ça marchera
mieux :o|

--
Argy
http://argyronet.developpez.com/

Ce qui donne son sens à la communication, c´est la réponse que l´on obtient.
Si vous n´obtenez pas la réponse voulue, communiquez différemment




"Jessy Sempere [MVP]" a écrit dans le message de
news: 446349c6$
Bonjour

Envois le code utiliser par ton bouton, ce sera plus simple...


Salut,
Le voici :

' DEBUT

Private Sub bFermer_Click()

On Error GoTo Err_BFermer_Click

' qq validations

If Me!AT01 = "88" Then

Me!IDM = "oui"

Else

Me!IDM = "non"

End If

If Me!AT02 = "88" Then

Me!ACT = "oui"

Else

Me!ACT = "non"

End If

' sauve enregistrement

DoCmd.RunCommand acCmdSaveRecord

Dim stDocName As String

Dim stLinkCriteria As String

stDocName = "FHemo"

stLinkCriteria = "[CDHemo]=" & Me![CDHemo]

' ouvre le form lié

DoCmd.OpenForm stDocName, , , stLinkCriteria

' ferme le form

DoCmd.Close acForm, "fhemoatcd"

Exit_BFermer_Click:

Exit Sub

Err_BFermer_Click:

MsgBox Err.Description

Resume Exit_BFermer_Click


End Sub

' FIN







Avatar
Dad
"Argyronet" a écrit dans le message de
news:
C'est bizarre car ton code n'a rien de supsect en apparence...
Que donne celui-ci ?

Private Sub bFermer_Click()
Dim vntCHDEmo As Variant
Dim stLinkCriteria As String

On Error GoTo ErrHandler
Me!IDM = IIf(Me!AT01 = "88", "Oui", "Non")
Me!ACT = IIf(Me!AT02 = "88", "Oui", "Non")

vntCHDEmo = Me!CDHemo
If Not IsNull(vntCHDEmo) Then
stLinkCriteria = "[CDHemo]=" & Me!CDHemo
Me.Requery
DoCmd.Close acForm, Me.Name
DoCmd.OpenForm "FHemo", , , stLinkCriteria
Else
MsgBox "CDHemo est requis !", 48
End If
ExitHandler:
Exit Sub
ErrHandler:
MsgBox Err.Description, , Err.Number
Resume ExitHandler
End Sub

Je l'ai juste soulagé en lignes et substitué le SaveRecord par un Requery
et
fermé la source avant d'ouvrir l'autre mais rien ne garantie que ça
marchera
mieux :o|


Merci de tenter de me donner une autre solution et un autre code.
Mais, j'ai un autre form quasiment jumeaux de celui-ci et qui ne pose aucun
problème, c'est pour ça que je comprends pas !
Je pense pas que le problème se trouve dans le code de ce bouton, mais je ne
vois pas comment vous aider à trouver une solution.
J'ai compilé et recompilé, j'ai compacté et recompacté, que reste-t'il ?
Merci.

Avatar
Argyronet
Je pense pas que le problème se trouve dans le code de ce bouton...
C'est bien ce qu'il me semblait... ;o|


mais je ne vois pas comment vous aider à trouver une solution.
Y a t-il un objet graphique dans le formulaire ou un contrôle OCX

particulier ?
Avez-vous exécuté le code en pas à pas ?
Pour ce faire, mettez un point d'arrêt ici :
Private Sub bFermer_Click()
puis appuyer sur F8...
On verra peut-être où ça plante...
--
Argy
http://argyronet.developpez.com/

Ce qui donne son sens à la communication, c´est la réponse que l´on obtient.
Si vous n´obtenez pas la réponse voulue, communiquez différemment




"Argyronet" a écrit dans le message de
news:
C'est bizarre car ton code n'a rien de supsect en apparence...
Que donne celui-ci ?

Private Sub bFermer_Click()
Dim vntCHDEmo As Variant
Dim stLinkCriteria As String

On Error GoTo ErrHandler
Me!IDM = IIf(Me!AT01 = "88", "Oui", "Non")
Me!ACT = IIf(Me!AT02 = "88", "Oui", "Non")

vntCHDEmo = Me!CDHemo
If Not IsNull(vntCHDEmo) Then
stLinkCriteria = "[CDHemo]=" & Me!CDHemo
Me.Requery
DoCmd.Close acForm, Me.Name
DoCmd.OpenForm "FHemo", , , stLinkCriteria
Else
MsgBox "CDHemo est requis !", 48
End If
ExitHandler:
Exit Sub
ErrHandler:
MsgBox Err.Description, , Err.Number
Resume ExitHandler
End Sub

Je l'ai juste soulagé en lignes et substitué le SaveRecord par un Requery
et
fermé la source avant d'ouvrir l'autre mais rien ne garantie que ça
marchera
mieux :o|


Merci de tenter de me donner une autre solution et un autre code.
Mais, j'ai un autre form quasiment jumeaux de celui-ci et qui ne pose aucun
problème, c'est pour ça que je comprends pas !
Je pense pas que le problème se trouve dans le code de ce bouton, mais je ne
vois pas comment vous aider à trouver une solution.
J'ai compilé et recompilé, j'ai compacté et recompacté, que reste-t'il ?
Merci.






Avatar
Dad
"Argyronet" a écrit dans le message de
news:
Je pense pas que le problème se trouve dans le code de ce bouton...
C'est bien ce qu'il me semblait... ;o|


mais je ne vois pas comment vous aider à trouver une solution.
Y a t-il un objet graphique dans le formulaire ou un contrôle OCX

particulier ?
Avez-vous exécuté le code en pas à pas ?
Pour ce faire, mettez un point d'arrêt ici :
Private Sub bFermer_Click()
puis appuyer sur F8...
On verra peut-être où ça plante...


Bonsoir,

J'ai déjà fait ça ...
Après avoir parcouru le code, le pas à pas s'arrete à la ligne :

Exit_BFermer_Click:
Exit Sub ' le curseur clignote devant Exit Sub

Et en sortant de la fenêtre VBA, je me retrouve bien avec mon form FHemo ...
Je reste perplexe ! ! !
NB : pas d'OCX no objet graphique.


Avatar
Argyronet
Hummm, je le suis autant que vous...
Là, je reconstruirai le formulaire... Car rien ne laisse entendre
l'explication d'un tel comportement. Enfin, pas avec les infos dont on
dispose et comme vous dîtes si bien :"mais je ne vois pas comment vous aider
à trouver une solution."
--
Argy
http://argyronet.developpez.com/

Ce qui donne son sens à la communication, c´est la réponse que l´on obtient.
Si vous n´obtenez pas la réponse voulue, communiquez différemment




"Argyronet" a écrit dans le message de
news:
Je pense pas que le problème se trouve dans le code de ce bouton...
C'est bien ce qu'il me semblait... ;o|


mais je ne vois pas comment vous aider à trouver une solution.
Y a t-il un objet graphique dans le formulaire ou un contrôle OCX

particulier ?
Avez-vous exécuté le code en pas à pas ?
Pour ce faire, mettez un point d'arrêt ici :
Private Sub bFermer_Click()
puis appuyer sur F8...
On verra peut-être où ça plante...


Bonsoir,

J'ai déjà fait ça ...
Après avoir parcouru le code, le pas à pas s'arrete à la ligne :

Exit_BFermer_Click:
Exit Sub ' le curseur clignote devant Exit Sub

Et en sortant de la fenêtre VBA, je me retrouve bien avec mon form FHemo ...
Je reste perplexe ! ! !
NB : pas d'OCX no objet graphique.








Avatar
Dad
Salut,

Je cherche encore ...
Merci.
Avatar
Dad
Salut,

J'ai pas trouvé, Mais ça MARCHE !
Explication :
Je sais pas pourquoi, mais j'ai eu envie de tester la fermeture du form en
faisant Alt + F4.
Je pensai dans ma grande naïveté que ça fermait que la fenêtre active ( à
confirmer ), or, la aussi ça a tout fermé (le form, l'appli et Access).
Je reviens sur mon problème de form qui ferme tout, mais cette fois je
clique sur le bon bouton, et miracle, ça a marché ! ! !
D'abord j'y ai pas cru, puis j'ai testé et re-testé plutôt 10 fois qu'une
et c'est tout bon.
Va savoir Charles ...
Une explication ? ou les mystères de ACCESS ! ...
@ +