Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/12/2011, 22h25   #1
Invité de passage
 
Homme
Inscription : décembre 2011
Messages : 3
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations forums :
Inscription : décembre 2011
Messages : 3
Points : 1
Points : 1
Par défaut affecter valeur dans beforeupdate

Bonjour,

Dans un BEFOREUPDATE, je fais une validation pour savoir si la donner entrer est bonne. Si le résultat est négatif, j'envoie un message a l'utilisateur, j'annule la modification du champs en affectant false a cancel et je remet l'ancienne donné dans le champs.

Tous fonctionne bien, le message a l'utilisateur est envoyer, l'update est annuler, le curseur reste sur le champ, mais impossible d'affecter l'ancienne donné dans le champs, je reçois un message d'erreur 2115, d'après ce que j'ai compris c'est qu'on peut pas réaffecter la donné temps que l'évènement BEFOREUPDATE n'est pas terminer.

Peut-on contourner ce problème, ou quelqu'un a t'il une meilleur idées. J'ai essayer dans exit, mais si je click sur un bouton sans sortir du champ avant, le exit n'est pas effectuer.

Merci
Serico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2011, 23h35   #2
Expert Confirmé
 
Avatar de vodiem
 
Homme Diem VO
Vivre
Inscription : avril 2006
Messages : 2 644
Détails du profil
Informations personnelles :
Nom : Homme Diem VO
Âge : 40
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Vivre
Secteur : Conseil

Informations forums :
Inscription : avril 2006
Messages : 2 644
Points : 3 895
Points : 3 895
salut Serico et bienvenu,

il faut employer en plus du cancel, MonControl.Undo
cela marche si le control est lié à un champ et n'est donc pas indépendant...

vodiem est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 12/12/2011, 13h36   #3
Invité de passage
 
Homme
Inscription : décembre 2011
Messages : 3
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations forums :
Inscription : décembre 2011
Messages : 3
Points : 1
Points : 1
Merci pour ta réponse vodiem,

Mais ça résous pas tous a fais mon problème. Car ce que je veux faire, est de remettre la valeur contenu dans la BD, pas seulement la dernière valeur du champ.

Si a l'ouverture du formulaire j'ai 2 dans le champs et que le nombre max est 6, l'utilisateur entre 5 et par la suite entre 10, mais je voudrais remettre 2, pas 5 dans le champs, ta solution remet 5 dans le champs, bon c'est mieux que rien.

Merci.
Serico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2011, 14h00   #4
Rédacteur/Modérateur
 
Avatar de Domi2
 
Homme
Inscription : juin 2006
Messages : 6 225
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 52
Localisation : Suisse

Informations professionnelles :
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : juin 2006
Messages : 6 225
Points : 9 928
Points : 9 928
Envoyer un message via Skype™ à Domi2
Bonjour,

L'ancienne valeur est disponible. LeNomDuControle.OldValue.

Domi2
__________________
Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

Ici, on ne perd pas de temps ! On en passe...


Access : créer des codes-barres 128 en VBA
Access : les commandes intégrées des menus

Ce message (ou un autre) vous a aidé ? Votez pour lui avec
Domi2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h34.


 
 
 
 
Partenaires

Hébergement Web