OVH Cloud OVH Cloud

messagebox

9 réponses
Avatar
dfcena
Bonjour

J'ai cr=E9er une msgbox et je veut qu'elle m'annule la=20
saisi qui =E0 d=E9clencher le message
donc voila la proc=E8dure
Private Sub N=B0BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N=B0 de BL. Voulez vous=20
r=E9ellement continuer.", vbYesNo + vbCritical +=20
vbDefaultButton2, "Modification") =3D No Then
DoCmd.CancelEvent
End If
End Sub
mais elle ne m'annule rien me donne 2fois la msgbox
Ou est le probl=E8me?

9 réponses

Avatar
Eric
"dfcena" écrivait news:1835401c44a22
$eb3921f0$:

Bonjour

J'ai créer une msgbox et je veut qu'elle m'annule la
saisi qui à déclencher le message
donc voila la procèdure
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL. Voulez vous
réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
DoCmd.CancelEvent
End If
End Sub
mais elle ne m'annule rien me donne 2fois la msgbox
Ou est le problème?



Bonjour


Remplacer DoCmd.CancelEvent par Cancel=True n'irait pas ?


A
Eric

Avatar
dfcena
Re

en remplacant DoCmd.CancelEvent par Cancel=True supprime
le doublon de msgbox mais n'annule pas la saisie
-----Message d'origine-----
"dfcena" écrivait
news:1835401c44a22

$eb3921f0$:

Bonjour

J'ai créer une msgbox et je veut qu'elle m'annule la
saisi qui à déclencher le message
donc voila la procèdure
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL. Voulez
vous


réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
DoCmd.CancelEvent
End If
End Sub
mais elle ne m'annule rien me donne 2fois la msgbox
Ou est le problème?



Bonjour


Remplacer DoCmd.CancelEvent par Cancel=True n'irait pas ?


A
Eric
.




Avatar
Eric
Re,
derriere tu mets :
Me.Toncontrole.Undo
et ca vire ta saisie

Eric

"dfcena" écrivait
news:1821601c44a2b$cc38a510$:

Re

en remplacant DoCmd.CancelEvent par Cancel=True supprime
le doublon de msgbox mais n'annule pas la saisie
-----Message d'origine----- "dfcena"
écrivait news:1835401c44a22
$eb3921f0$:

Bonjour

J'ai créer une msgbox et je veut qu'elle m'annule la
saisi qui à déclencher le message
donc voila la procèdure
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL. Voulez vous
réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
DoCmd.CancelEvent
End If
End Sub
mais elle ne m'annule rien me donne 2fois la msgbox
Ou est le problème?



Bonjour


Remplacer DoCmd.CancelEvent par Cancel=True n'irait pas ?


A
Eric
.







Avatar
Re
et non
-----Message d'origine-----
Re,
derriere tu mets :
Me.Toncontrole.Undo
et ca vire ta saisie

Eric

"dfcena" écrivait
news:1821601c44a2b$cc38a510$:

Re

en remplacant DoCmd.CancelEvent par Cancel=True
supprime


le doublon de msgbox mais n'annule pas la saisie
-----Message d'origine----- "dfcena"
écrivait
news:1835401c44a22



$eb3921f0$:

Bonjour

J'ai créer une msgbox et je veut qu'elle m'annule la
saisi qui à déclencher le message
donc voila la procèdure
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL. Voulez
vous




réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
DoCmd.CancelEvent
End If
End Sub
mais elle ne m'annule rien me donne 2fois la msgbox
Ou est le problème?



Bonjour


Remplacer DoCmd.CancelEvent par Cancel=True n'irait
pas ?





A
Eric
.





.






Avatar
Eric
re,

Tu me surprends

Tu as mis ca dans ton code :
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL. Voulez vous
réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
Cancel=True
Me.N°BL.Undo ' ou Me.[N°BL].Undo
End If
End Sub

car ca marche, je viens de tester.

Eric


écrivait news:184f701c44a35
$4f89f5a0$:

Re
et non
-----Message d'origine-----
Re,
derriere tu mets :
Me.Toncontrole.Undo
et ca vire ta saisie

Eric

"dfcena" écrivait
news:1821601c44a2b$cc38a510$:

Re

en remplacant DoCmd.CancelEvent par Cancel=True supprime le doublon
de msgbox mais n'annule pas la saisie
-----Message d'origine----- "dfcena"
écrivait news:1835401c44a22
$eb3921f0$:

Bonjour

J'ai créer une msgbox et je veut qu'elle m'annule la
saisi qui à déclencher le message
donc voila la procèdure
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL. Voulez vous
réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
DoCmd.CancelEvent
End If
End Sub
mais elle ne m'annule rien me donne 2fois la msgbox
Ou est le problème?



Bonjour


Remplacer DoCmd.CancelEvent par Cancel=True n'irait pas ?


A
Eric
.





.








Avatar
Didier
Oui
Que je clique sur Oui ou non j'ai le même résultat
-----Message d'origine-----
re,

Tu me surprends

Tu as mis ca dans ton code :
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL. Voulez vous
réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
Cancel=True
Me.N°BL.Undo ' ou Me.[N°BL].Undo
End If
End Sub

car ca marche, je viens de tester.

Eric


écrivait
news:184f701c44a35

$4f89f5a0$:

Re
et non
-----Message d'origine-----
Re,
derriere tu mets :
Me.Toncontrole.Undo
et ca vire ta saisie

Eric

"dfcena"
écrivait



news:1821601c44a2b$cc38a510$:

Re

en remplacant DoCmd.CancelEvent par Cancel=True
supprime le doublon




de msgbox mais n'annule pas la saisie
-----Message d'origine----- "dfcena"
écrivait
news:1835401c44a22





$eb3921f0$:

Bonjour

J'ai créer une msgbox et je veut qu'elle m'annule
la






saisi qui à déclencher le message
donc voila la procèdure
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL.
Voulez vous






réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
DoCmd.CancelEvent
End If
End Sub
mais elle ne m'annule rien me donne 2fois la msgbox
Ou est le problème?



Bonjour


Remplacer DoCmd.CancelEvent par Cancel=True n'irait
pas ?







A
Eric
.





.




.








Avatar
Eric
Re
L'erreur est dans le test
C'est pas msgbox(...) =No then
mais If msgbox(...)= vbNo then

Voila
Eric



Eric écrivait
news::

re,

Tu me surprends

Tu as mis ca dans ton code :
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL. Voulez vous
réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
Cancel=True
Me.N°BL.Undo ' ou Me.[N°BL].Undo
End If
End Sub

car ca marche, je viens de tester.

Eric


écrivait news:184f701c44a35
$4f89f5a0$:

Re
et non
-----Message d'origine-----
Re,
derriere tu mets :
Me.Toncontrole.Undo
et ca vire ta saisie

Eric

"dfcena" écrivait
news:1821601c44a2b$cc38a510$:

Re

en remplacant DoCmd.CancelEvent par Cancel=True supprime le
doublon




de msgbox mais n'annule pas la saisie
-----Message d'origine----- "dfcena"
écrivait news:1835401c44a22
$eb3921f0$:

Bonjour

J'ai créer une msgbox et je veut qu'elle m'annule la
saisi qui à déclencher le message
donc voila la procèdure
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL. Voulez vous
réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
DoCmd.CancelEvent
End If
End Sub
mais elle ne m'annule rien me donne 2fois la msgbox
Ou est le problème?



Bonjour


Remplacer DoCmd.CancelEvent par Cancel=True n'irait pas ?


A
Eric
.





.












Avatar
dfcena
C'est pareil
-----Message d'origine-----
Re
L'erreur est dans le test
C'est pas msgbox(...) =No then
mais If msgbox(...)= vbNo then

Voila
Eric



Eric écrivait
news::

re,

Tu me surprends

Tu as mis ca dans ton code :
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL. Voulez
vous


réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
Cancel=True
Me.N°BL.Undo ' ou Me.[N°BL].Undo
End If
End Sub

car ca marche, je viens de tester.

Eric


écrivait
news:184f701c44a35


$4f89f5a0$:

Re
et non
-----Message d'origine-----
Re,
derriere tu mets :
Me.Toncontrole.Undo
et ca vire ta saisie

Eric

"dfcena"
écrivait




news:1821601c44a2b$cc38a510$:

Re

en remplacant DoCmd.CancelEvent par Cancel=True
supprime le





doublon
de msgbox mais n'annule pas la saisie
-----Message d'origine----- "dfcena"
écrivait
news:1835401c44a22






$eb3921f0$:

Bonjour

J'ai créer une msgbox et je veut qu'elle m'annule
la







saisi qui à déclencher le message
donc voila la procèdure
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL.
Voulez vous







réellement continuer.", vbYesNo + vbCritical +
vbDefaultButton2, "Modification") = No Then
DoCmd.CancelEvent
End If
End Sub
mais elle ne m'annule rien me donne 2fois la
msgbox







Ou est le problème?



Bonjour


Remplacer DoCmd.CancelEvent par Cancel=True
n'irait pas ?








A
Eric
.





.







.









Avatar
Raymond [mvp]
Bonjour.

j'ai testé la fonction d'Eric, elle fonctionne à merveille.
Private Sub N°BL_BeforeUpdate(Cancel As Integer)
If MsgBox("Vous allez modifier un N° de BL. Voulez vous réellement
continuer.", vbYesNo + vbCritical + vbDefaultButton2, "Modification") = vbNo
Then
Cancel = True
Me.N°BL.Undo
End If
End Sub

vérifie que tu as bien indiqué [procédure événementielle] sur la ligne
beforeupdate de ton contrôle, quelquefois ça disparaît.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"dfcena" a écrit dans le message de
news:1853201c44a47$25003300$
C'est pareil