J ai teste ca dans un de mes formulaires, OK ca marche, mais access m envoie toujours des messages de mise en garde (Attention, vous ne pourrez plus revenir en arriere...). Je voudrais mettre mes propres messages, est-il possible de "deconnecter" les mises en garde d´access?
:question)
Deuxiemement:
j ai un petit bout de code qui protege les valeurs de mes champs dans mes formulaires (qd je rentre dans le champ, j enregistre sa valeur dans un variable, et en sortant, si je ne veux pas enregistrer les modifications, je peux remettre la valeur initiale).
Pb: quand je veux supprimer un enregistrement grace aux deux lignes precedemment citees, access croit que j ai fait une modification et me demande si je veux l enregistrer (ca correspond a mon petit bout de code!), et je recois alors un joli message d erreur qui me dit que j ai arrete l action DoCmd.RunCommand.
skrol29
Messages postés114Date d'inscriptionvendredi 3 mai 2002StatutMembreDernière intervention17 novembre 2014 23 juil. 2002 à 10:54
1/ Pour supprimer le message de mise en guarde lors de la suppression d'enreg dans Access.
Il y a la commande
DoCmd.SetWarnings False
et
DoCmd.SetWarnings True
Mais je DECONSEILLE fortement de l'utiliser parceque ce paramétrage est modifié pour toutes les applications Access. En plus si ton code plante, les messages futurs ne seront jamais affichés ce qui est très dangeureux.
A la place, tu peux faure une suppression avec l'instruction
CurrentDB.Execute "DELETE * FROM...."
Qui lance un instruction SQL sans passer par l'interface d'Access. Donc sans message d'alerte.
C'est + propre.
2/ Pour empécher la modif de donnée.
Le message que tu optiens est normal car les données sont réelement modifiée par l'utilisateur, puis une deuxième fois par ton prog pour le remettre à l'ancienne valeur.
C'est top propre comme méthode.
Tu peux, si ça convient, protéger tes contrôles contre la modif en mettant la propriété Vérouillé à Oui.
Tu peux aussi vérifier la modif d'enreg avant suppression comme ceci :
If Me.Dirty Then
Me.Undo
End If
Ou encore, si tu passes par le code de suppression cité + haut, ben t'as plus de problème.