OVH Cloud OVH Cloud

Dirty

20 réponses
Avatar
Ayrton
Bonjour à tous ,

Je cherche à connaître la ligne de code qui me permettrait de passer mon
formulaire en dirty=true .

Un grand merci d'avance pour votre aide

--
@+
Ayrton
http://cerbermail.com/?FiLzjrFmWV
Click here to answer

10 réponses

1 2
Avatar
Raymond [mvp]
Je crois quand même qu'il faut choisir les événements qui fonctionnent.
BeforeUpdate ne peut pas fonctionner car le formulaire peut ne pas être
modifier, mais fonctionne très bien en ca de modif.
Form_Current est, je dirais, obligatoire, car immédiatement à l'affichage ça
va informer que la saisie n'est pas bonne.
Donc Form_current et Form_BeforeUpdate vont couvrir 100% des cas et tu ne
passeras jamais au travers.
c'est mon avis seulement.

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


"Ayrton" a écrit dans le message de
news:%23$
Re Raymond ,

"Raymond [mvp]" a écrit dans le message de
news:
Tu sors la phrase de son contexte.


Sincèrement je ne crois pas !

je t'ai dit
Car, pour "passer" ton formulaire en "dirty = True"
tu tape simplement : Dirty = True
mais, et c'est le point important, dans le bon événement!
==================================== > > il faut lire tout le paragraphe, sinon ça n'a pas de sens.




Mais j'ai tout lu ! l'evènement concerné est le BeforeUpdate si j'ai bien
compris non ?
il me semble que je t'avais indiqué de placer ta procédure sur la
sortie du premier contrôle qui reçoit le focus pour être sûr de
passer dessus. l'as-tu essayé ?


Bien sûr que je l'ai fait et ça fonctionne à partir du moment où je me
mets en sortie de champs ( et ça, peu importe quel champs je choisi ) ; je
trouvais mieux de le mettre e nbeforeUpdate et là, ça ne marche plus ; je
passe au travers ! !
Tu m'avais même dit d'essayer sur : Form_Current et je l'ai fait ; et là
ça

marche sauf que pour moi, le mettre là, ça ne ressemble à rien ! ; mais
toujours est il que ça marche ; il n'y a qu'en BeforeUpdate que ça ne va
pas

et c'est justement là que je voulais le mettre ! Avoue que je n'ai pas
de

chance sur ce coup là ! !

--
@+
Ayrton





Avatar
Ayrton
"Raymond [mvp]" a écrit dans le message de
news:%23kdVB%
Je crois quand même qu'il faut choisir les événements qui
fonctionnent. BeforeUpdate ne peut pas fonctionner car le formulaire
peut ne pas être modifier, mais fonctionne très bien en ca de modif.
Form_Current est, je dirais, obligatoire, car immédiatement à
l'affichage ça va informer que la saisie n'est pas bonne.


je suis d'accord Raymond mais sauf si j'ai encore fait une erreur ;-) si je
mets sur Form_Current, j'ai ma MsgBox qui s'affiche à chaque changement
d'enregistrement et avant même que j'ai saisi quoi que ce soit ; c'est pour
cela que je te disais que je n'en voyais pas trop l'utilité ( à moins que
j'ai mal fait ; à vrai dire j'ai mis sur ' Activation " comme evenement ;
c'etait bien ça ?

Donc Form_current et Form_BeforeUpdate vont couvrir 100% des cas et
tu ne passeras jamais au travers.
c'est mon avis seulement.


Oui mais pour moi ton avis est très important car tu sais de quoi tu parles
! ! Donc, de par principe, je suivrais tes conseils ; pour moi ça me parait
évident ;-)

--
@+
Ayrton
http://cerbermail.com/?FiLzjrFmWV
Click here to answer

"Ayrton" a écrit dans le message de
news:%23$
Re Raymond ,

"Raymond [mvp]" a écrit dans le message
de news:
Tu sors la phrase de son contexte.


Sincèrement je ne crois pas !

je t'ai dit
Car, pour "passer" ton formulaire en "dirty = True"
tu tape simplement : Dirty = True
mais, et c'est le point important, dans le bon événement!
==================================== >>> il faut lire tout le paragraphe, sinon ça n'a pas de sens.




Mais j'ai tout lu ! l'evènement concerné est le BeforeUpdate si j'ai
bien compris non ?
il me semble que je t'avais indiqué de placer ta procédure sur la
sortie du premier contrôle qui reçoit le focus pour être sûr de
passer dessus. l'as-tu essayé ?


Bien sûr que je l'ai fait et ça fonctionne à partir du moment où
je me mets en sortie de champs ( et ça, peu importe quel champs je
choisi ) ; je trouvais mieux de le mettre e nbeforeUpdate et là, ça
ne marche plus ; je passe au travers ! !
Tu m'avais même dit d'essayer sur : Form_Current et je l'ai fait ;
et là ça marche sauf que pour moi, le mettre là, ça ne ressemble à
rien ! ; mais toujours est il que ça marche ; il n'y a qu'en
BeforeUpdate que ça ne va pas et c'est justement là que je voulais
le mettre ! Avoue que je n'ai pas de chance sur ce coup là ! !

--
@+
Ayrton







Avatar
3stone
re,

"Ayrton"
En plus de cela, le formulaire possède une variable "Dirty" que tu
peux tester
à tout moment. Dès un changement, elle sera à True.


Oui mais c'est là que le bas blesse ! ! ! Comment je teste ? en marquant
dirty=true dans l'evenement " sur modification " ?
Vu que que j'ai un gros doute sur comment faire, je prefère avoir l'air bête
en posant une question plutôt que de ne rien dire et par le fait, rien
apprendre ! !



Comme tu crée de nouveaux fils de discussions, c'est pas simple à suivre...

Il faudrait que je recherche ce que tu veux faire, au final...

...

...

je viens de le faire rapidement ;-)


Bon, le code de Raymond (complèté ;):

Dim HLK As Hyperlink
Set HLK = Me.Email.Hyperlink
If IsNull(HLK.Address) Or Trim(HLK.Address) = "" Then
If MsgBox("Vous n'avez pas saisi d'Email ; Voulez-Vous valider l'enregistrement?", vbYesNo)
= vbNo Then
Email.SetFocus
Cancel = True
End If
End If

tu le mets sur avant mise à jour du formulaire, et roule Marcel !


--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------


Avatar
Raymond [mvp]
C'est bien sur activation.

c'est toi qui voit et qui décide au mieux de tes intérêts informatiques.

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


"Ayrton" a écrit dans le message de
news:
"Raymond [mvp]" a écrit dans le message de
news:%23kdVB%
Je crois quand même qu'il faut choisir les événements qui
fonctionnent. BeforeUpdate ne peut pas fonctionner car le formulaire
peut ne pas être modifier, mais fonctionne très bien en ca de modif.
Form_Current est, je dirais, obligatoire, car immédiatement à
l'affichage ça va informer que la saisie n'est pas bonne.


je suis d'accord Raymond mais sauf si j'ai encore fait une erreur ;-) si
je

mets sur Form_Current, j'ai ma MsgBox qui s'affiche à chaque changement
d'enregistrement et avant même que j'ai saisi quoi que ce soit ; c'est
pour

cela que je te disais que je n'en voyais pas trop l'utilité ( à moins que
j'ai mal fait ; à vrai dire j'ai mis sur ' Activation " comme evenement ;
c'etait bien ça ?

Donc Form_current et Form_BeforeUpdate vont couvrir 100% des cas et
tu ne passeras jamais au travers.
c'est mon avis seulement.


Oui mais pour moi ton avis est très important car tu sais de quoi tu
parles

! ! Donc, de par principe, je suivrais tes conseils ; pour moi ça me
parait

évident ;-)

--
@+
Ayrton



Avatar
Ayrton
Re ,
"3stone" a écrit dans le message de
news:
re,


Comme tu crée de nouveaux fils de discussions, c'est pas simple à
suivre...


?? ben non ! ! Je reste dans mon fil ; je sais que tout ça me perturbe mais
quand même ;-)

Il faudrait que je recherche ce que tu veux faire, au final...


Juste savoir pourquoi l'evenement BeforeUpdate ne passe pas et comment
tester un fonction.................................pour eviter de vous
ennuyer en posant la même question un peu plus tard ;-)

je viens de le faire rapidement ;-)


Bon, le code de Raymond (complèté ;):

Dim HLK As Hyperlink
Set HLK = Me.Email.Hyperlink
If IsNull(HLK.Address) Or Trim(HLK.Address) = "" Then
If MsgBox("Vous n'avez pas saisi d'Email ; Voulez-Vous
valider l'enregistrement?", vbYesNo) = vbNo Then
Email.SetFocus
Cancel = True
End If
End If

tu le mets sur avant mise à jour du formulaire, et roule Marcel !


Tu veux rire 3stone ? Eh bien rions esnsemble
lol...............................................................ça ne
passe toujours pas dans beforeupdate !! !
Je finis par en rire car ça m'enerve tellement que je me demande si je
farais pas mieux de jouer à la petanque ! ! ! !
C'est quand même moins compliqué ;-)

--
@+
Ayrton
http://cerbermail.com/?FiLzjrFmWV
Click here to answer

Avatar
Ayrton
Re Raymond,
"Raymond [mvp]" a écrit dans le message de
news:%
C'est bien sur activation.

c'est toi qui voit et qui décide au mieux de tes intérêts
informatiques.


Effectivement je vais voir mais je crois que je resterais sur l'évènement
sur Sortie ; dans le pire des cas c'est celui qui me convient le mieux ! !
Merci pour tout Raymond

--
@+
Ayrton
http://cerbermail.com/?FiLzjrFmWV
Click here to answer


"Ayrton" a écrit dans le message de
news:
"Raymond [mvp]" a écrit dans le message
de news:%23kdVB%
Je crois quand même qu'il faut choisir les événements qui
fonctionnent. BeforeUpdate ne peut pas fonctionner car le formulaire
peut ne pas être modifier, mais fonctionne très bien en ca de modif.
Form_Current est, je dirais, obligatoire, car immédiatement à
l'affichage ça va informer que la saisie n'est pas bonne.


je suis d'accord Raymond mais sauf si j'ai encore fait une erreur
;-) si je mets sur Form_Current, j'ai ma MsgBox qui s'affiche à
chaque changement d'enregistrement et avant même que j'ai saisi quoi
que ce soit ; c'est pour cela que je te disais que je n'en voyais
pas trop l'utilité ( à moins que j'ai mal fait ; à vrai dire j'ai
mis sur ' Activation " comme evenement ; c'etait bien ça ?

Donc Form_current et Form_BeforeUpdate vont couvrir 100% des cas et
tu ne passeras jamais au travers.
c'est mon avis seulement.


Oui mais pour moi ton avis est très important car tu sais de quoi tu
parles ! ! Donc, de par principe, je suivrais tes conseils ; pour
moi ça me parait évident ;-)

--
@+
Ayrton





Avatar
3stone
re,

"Ayrton"
Comme tu crée de nouveaux fils de discussions, c'est pas simple à
suivre...


?? ben non ! ! Je reste dans mon fil ; je sais que tout ça me perturbe mais
quand même ;-)



Je parlais du même problème... tant que ce n'est pas résolu...



passe toujours pas dans beforeupdate !! !



Je me demande si tu le mets bien dans le "BeforeUpdate" du formulaire...
donc, "Form_BeforeUpdate"


Si tu mets ton code à cet endroit, et que tu fait une modification,
ou une nouvelle saisie, le code DOIT etre exécuté !!!

Si tu ne modifie rien, si tu teste simplement en parcourant tes enregistrements
alors non, il n'y passe pas...

Et je t'ai expliqué pourquoi tout à l'heure...


--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------


Avatar
Ayrton
Re,

"3stone" a écrit dans le message de
news:
Je parlais du même problème... tant que ce n'est pas résolu...


D'accord ! Autant pour moi

Si tu mets ton code à cet endroit, et que tu fait une modification,
ou une nouvelle saisie, le code DOIT etre exécuté !!!


Je te prie d'accepter *toutes* mes excuses ! ! En effet, je ne modifiais pas
! si je supprime une adresse mail , effectivement ça fonctionne ! !
Je suis vraiment désolé ! Ce n'est qu'à la lecture de ta répose de tout à
l'heure oèu tu m'expliquait ça bien que j'ai commencé à avoir un doute ;
effectivement c'est moi qui m'y prenait mal et c'est pour cela que je tiens
à m'excuser !
Merci de ton aide précieuse et encore toutes mes excuses pour t'avoir fait
perdre du temps car si j'avais fait attention cela aurait pu être résouli
beaucoup plus rapidement surtout sans t'ennuyer autant.

Encore merci

--
@+
Ayrton
http://cerbermail.com/?FiLzjrFmWV
Click here to answer

Avatar
3stone
Salut,

"Ayrton"
Je te prie d'accepter *toutes* mes excuses ! !



Il n'y a pas de quoi...
Si cela m'ennuierai, je ne viendrais pas sur le forum.

Le principal est que cela fonctionne et que tu progresse

;-)



--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------

Avatar
Ayrton
"3stone" a écrit dans le message de
news:%
Il n'y a pas de quoi...
Si cela m'ennuierai, je ne viendrais pas sur le forum.


peut être mais il n'y a pas que moi et tu m'as énormément aidé ( et ce n'est
pas la première fois d'ailleurs )

Le principal est que cela fonctionne et que tu progresse


Avec tes conseils ( dont je garde precieusement les mails au cas où ;-) )
je suis obligé d eprogresser ; la prochaine fois je demanderais juste la
syntaxe pour " tester " une fonction dans ma fenêtre execution et après
j'aurais de quoi faire pour continuer à travailler et à apprendre ; car en
règle general j'essaie toujours avant de venir sur le forum ; j'attends pas
qu'on me donne la solution ; je cherche avant de demander et quand je ne
sais pas ou que je ne comprends pas, eh bie nje fais appel à vous ! !

Voili voilou ;-)
Encore merci

--
@+
Ayrton
http://cerbermail.com/?FiLzjrFmWV
Click here to answer

1 2