OVH Cloud OVH Cloud

Modifier message d'Access

8 réponses
Avatar
Richard Martin
Bonjour

Vous connaissez le message d'Access quand il nous dis que nous avons entré
un doublon. Je me demandais si c'était possible de modifier ce grand
message compliqué pour un débutant par un message personnalisé comme par
exemple : (Vous avez essayé d'entrer un client dont le numéro existe déjà.).
L'histoire des violations de clé etc., je ne veux pas voir ça devant les
usagés de la base de données. J'utilise des formulaires pour l'entré des
données. Que ce soir par programmation, macro etc., si vous avez une
solution je suis preneur. En vous remerçiant d'avance, je vous souhaite une
bonne journée.

P.S. Access 2003 en environnement Windows XP

Richard

8 réponses

Avatar
J-Pierre
Bonjour Richard,

Oui, c'est possible. Soit en intervenant par code VBA sur l'évènement OnError du formulaire (code ci-après), soit gérant
l'évènement OnError à l'intérieur d'une procédure évènementielle dans ton code VBA, ça dépendra de la manière dont l'évènement
insertion dans la table est déclenché.

Si l'insertion est déclenchée automatiquement, OnError du formulaire, si elle est déclenchée par un clic sur un bouton et
l'insertion elle-même par code VBA, gestion dans le code.

Et ne me demande pas à quoi correspond l'erreur 30014, j'ai écrit ça il y a plusieurs années et j'ai peut-être oublié de
documenter.....

J-Pierre

Private Sub Form_Error(DataErr As Integer, Wresponse As Integer)

Const Wdouble = 2757

If DataErr = 30014 Then
Wresponse = acDataErrContinue
Exit Sub
End If

If DataErr = Wdouble Then
Wresponse = acDataErrContinue
Werreur = "yes"
MsgBox "Cet imprimeur existe déjà", vbOKOnly, "CREATION D'UN IMPRIMEUR"
Me.T100_nom_client.SetFocus
Else
Wresponse = acDataErrContinue
Werreur = "yes"
' MsgBox "Erreur inconnue code " & DataErr & ", imprimeur non créé", _
' vbOKOnly, "CREATION D'UN IMPRIMEUR"
Me.T100_nom_client.SetFocus
End If

End Sub

"Richard Martin" a écrit dans le message de news: eTlMf$n$
Bonjour

Vous connaissez le message d'Access quand il nous dis que nous avons entré un doublon. Je me demandais si c'était possible
de modifier ce grand message compliqué pour un débutant par un message personnalisé comme par exemple : (Vous avez essayé
d'entrer un client dont le numéro existe déjà.). L'histoire des violations de clé etc., je ne veux pas voir ça devant les
usagés de la base de données. J'utilise des formulaires pour l'entré des données. Que ce soir par programmation, macro
etc., si vous avez une solution je suis preneur. En vous remerçiant d'avance, je vous souhaite une bonne journée.

P.S. Access 2003 en environnement Windows XP

Richard



Avatar
Richard Martin
Bonjour

Comment met-on ça dans le On error de la propriété d'un champ de formulaire.
Le dernier champ du formulaire est celui qui doit contenir la vérification
du doublon dans la propriété avant mise à jour ? Comment procéder exactemen
?

Merci.

Richard
"J-Pierre" a écrit dans le message
de news: uzWsTOo$
Bonjour Richard,

Oui, c'est possible. Soit en intervenant par code VBA sur l'évènement
OnError du formulaire (code ci-après), soit gérant l'évènement OnError à
l'intérieur d'une procédure évènementielle dans ton code VBA, ça dépendra
de la manière dont l'évènement insertion dans la table est déclenché.

Si l'insertion est déclenchée automatiquement, OnError du formulaire, si
elle est déclenchée par un clic sur un bouton et l'insertion elle-même par
code VBA, gestion dans le code.

Et ne me demande pas à quoi correspond l'erreur 30014, j'ai écrit ça il y
a plusieurs années et j'ai peut-être oublié de documenter.....

J-Pierre

Private Sub Form_Error(DataErr As Integer, Wresponse As Integer)

Const Wdouble = 2757

If DataErr = 30014 Then
Wresponse = acDataErrContinue
Exit Sub
End If

If DataErr = Wdouble Then
Wresponse = acDataErrContinue
Werreur = "yes"
MsgBox "Cet imprimeur existe déjà", vbOKOnly, "CREATION D'UN
IMPRIMEUR"
Me.T100_nom_client.SetFocus
Else
Wresponse = acDataErrContinue
Werreur = "yes"
' MsgBox "Erreur inconnue code " & DataErr & ", imprimeur non créé",
_
' vbOKOnly, "CREATION D'UN IMPRIMEUR"
Me.T100_nom_client.SetFocus
End If

End Sub

"Richard Martin" a écrit dans le message de news:
eTlMf$n$
Bonjour

Vous connaissez le message d'Access quand il nous dis que nous avons
entré un doublon. Je me demandais si c'était possible de modifier ce
grand message compliqué pour un débutant par un message personnalisé
comme par exemple : (Vous avez essayé d'entrer un client dont le numéro
existe déjà.). L'histoire des violations de clé etc., je ne veux pas voir
ça devant les usagés de la base de données. J'utilise des formulaires
pour l'entré des données. Que ce soir par programmation, macro etc., si
vous avez une solution je suis preneur. En vous remerçiant d'avance, je
vous souhaite une bonne journée.

P.S. Access 2003 en environnement Windows XP

Richard







Avatar
J-Pierre
"Richard Martin" a écrit dans le message de news: %234vTziq$
Bonjour

Comment met-on ça dans le On error de la propriété d'un champ de formulaire. Le dernier champ du formulaire est celui qui
doit contenir la vérification du doublon dans la propriété avant mise à jour ? Comment procéder exactemen ?

Merci.

Richard
"J-Pierre" a écrit dans le message de news:
uzWsTOo$
Bonjour Richard,

Oui, c'est possible. Soit en intervenant par code VBA sur l'évènement OnError du formulaire (code ci-après), soit gérant
l'évènement OnError à l'intérieur d'une procédure évènementielle dans ton code VBA, ça dépendra de la manière dont
l'évènement insertion dans la table est déclenché.

Si l'insertion est déclenchée automatiquement, OnError du formulaire, si elle est déclenchée par un clic sur un bouton et
l'insertion elle-même par code VBA, gestion dans le code.

Et ne me demande pas à quoi correspond l'erreur 30014, j'ai écrit ça il y a plusieurs années et j'ai peut-être oublié de
documenter.....

J-Pierre

Private Sub Form_Error(DataErr As Integer, Wresponse As Integer)

Const Wdouble = 2757

If DataErr = 30014 Then
Wresponse = acDataErrContinue
Exit Sub
End If

If DataErr = Wdouble Then
Wresponse = acDataErrContinue
Werreur = "yes"
MsgBox "Cet imprimeur existe déjà", vbOKOnly, "CREATION D'UN IMPRIMEUR"
Me.T100_nom_client.SetFocus
Else
Wresponse = acDataErrContinue
Werreur = "yes"
' MsgBox "Erreur inconnue code " & DataErr & ", imprimeur non créé", _
' vbOKOnly, "CREATION D'UN IMPRIMEUR"
Me.T100_nom_client.SetFocus
End If

End Sub

"Richard Martin" a écrit dans le message de news: eTlMf$n$
Bonjour

Vous connaissez le message d'Access quand il nous dis que nous avons entré un doublon. Je me demandais si c'était
possible de modifier ce grand message compliqué pour un débutant par un message personnalisé comme par exemple : (Vous
avez essayé d'entrer un client dont le numéro existe déjà.). L'histoire des violations de clé etc., je ne veux pas voir ça
devant les usagés de la base de données. J'utilise des formulaires pour l'entré des données. Que ce soir par
programmation, macro etc., si vous avez une solution je suis preneur. En vous remerçiant d'avance, je vous souhaite une
bonne journée.

P.S. Access 2003 en environnement Windows XP

Richard











Avatar
J-Pierre
Bonsoir,

Dans les propriétés du formulaire, évènement "Sur erreur". Sinon, je ne comprends pas trop ta question :-(

J-Pierre

"Richard Martin" a écrit dans le message de news: %234vTziq$
Bonjour

Comment met-on ça dans le On error de la propriété d'un champ de formulaire. Le dernier champ du formulaire est celui qui
doit contenir la vérification du doublon dans la propriété avant mise à jour ? Comment procéder exactemen ?

Merci.

Richard
"J-Pierre" a écrit dans le message de news:
uzWsTOo$
Bonjour Richard,

Oui, c'est possible. Soit en intervenant par code VBA sur l'évènement OnError du formulaire (code ci-après), soit gérant
l'évènement OnError à l'intérieur d'une procédure évènementielle dans ton code VBA, ça dépendra de la manière dont
l'évènement insertion dans la table est déclenché.

Si l'insertion est déclenchée automatiquement, OnError du formulaire, si elle est déclenchée par un clic sur un bouton et
l'insertion elle-même par code VBA, gestion dans le code.

Et ne me demande pas à quoi correspond l'erreur 30014, j'ai écrit ça il y a plusieurs années et j'ai peut-être oublié de
documenter.....

J-Pierre

Private Sub Form_Error(DataErr As Integer, Wresponse As Integer)

Const Wdouble = 2757

If DataErr = 30014 Then
Wresponse = acDataErrContinue
Exit Sub
End If

If DataErr = Wdouble Then
Wresponse = acDataErrContinue
Werreur = "yes"
MsgBox "Cet imprimeur existe déjà", vbOKOnly, "CREATION D'UN IMPRIMEUR"
Me.T100_nom_client.SetFocus
Else
Wresponse = acDataErrContinue
Werreur = "yes"
' MsgBox "Erreur inconnue code " & DataErr & ", imprimeur non créé", _
' vbOKOnly, "CREATION D'UN IMPRIMEUR"
Me.T100_nom_client.SetFocus
End If

End Sub

"Richard Martin" a écrit dans le message de news: eTlMf$n$
Bonjour

Vous connaissez le message d'Access quand il nous dis que nous avons entré un doublon. Je me demandais si c'était
possible de modifier ce grand message compliqué pour un débutant par un message personnalisé comme par exemple : (Vous
avez essayé d'entrer un client dont le numéro existe déjà.). L'histoire des violations de clé etc., je ne veux pas voir ça
devant les usagés de la base de données. J'utilise des formulaires pour l'entré des données. Que ce soir par
programmation, macro etc., si vous avez une solution je suis preneur. En vous remerçiant d'avance, je vous souhaite une
bonne journée.

P.S. Access 2003 en environnement Windows XP

Richard











Avatar
Eric
Bonjour,

Faire le contrôle sur l'évènement avant Mise à jour dudit contrôle, non ?

Par exemple :

Private Sub NomChampAControler_BeforeUpdate(Cancel As Integer)
Dim nb As Integer
nb = DCount("*", "Archive", "NomChampAControler=" &
Me.NomChampAControler)
If nb > 0 Then
Cancel = True
MsgBox "Existe déjà"
'...
End If
End Sub

Si NomChampAControler est de type texte , modifier le dcount en:
nb = DCount("*", "Archive", "NomChampAControler='" &
Me.NomChampAControler & "'")

Bonjour

Comment met-on ça dans le On error de la propriété d'un champ de formulaire.
Le dernier champ du formulaire est celui qui doit contenir la vérification
du doublon dans la propriété avant mise à jour ? Comment procéder exactemen
?

Merci.



--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Richard Martin
Merci à vous deux, je vérifie ça.

Richard

"Richard Martin" a écrit dans le message de news:
%234vTziq$
Bonjour

Comment met-on ça dans le On error de la propriété d'un champ de
formulaire. Le dernier champ du formulaire est celui qui doit contenir la
vérification du doublon dans la propriété avant mise à jour ? Comment
procéder exactemen ?

Merci.

Richard
"J-Pierre" a écrit dans le
message de news: uzWsTOo$
Bonjour Richard,

Oui, c'est possible. Soit en intervenant par code VBA sur l'évènement
OnError du formulaire (code ci-après), soit gérant l'évènement OnError à
l'intérieur d'une procédure évènementielle dans ton code VBA, ça dépendra
de la manière dont l'évènement insertion dans la table est déclenché.

Si l'insertion est déclenchée automatiquement, OnError du formulaire, si
elle est déclenchée par un clic sur un bouton et l'insertion elle-même
par code VBA, gestion dans le code.

Et ne me demande pas à quoi correspond l'erreur 30014, j'ai écrit ça il y
a plusieurs années et j'ai peut-être oublié de documenter.....

J-Pierre

Private Sub Form_Error(DataErr As Integer, Wresponse As Integer)

Const Wdouble = 2757

If DataErr = 30014 Then
Wresponse = acDataErrContinue
Exit Sub
End If

If DataErr = Wdouble Then
Wresponse = acDataErrContinue
Werreur = "yes"
MsgBox "Cet imprimeur existe déjà", vbOKOnly, "CREATION D'UN
IMPRIMEUR"
Me.T100_nom_client.SetFocus
Else
Wresponse = acDataErrContinue
Werreur = "yes"
' MsgBox "Erreur inconnue code " & DataErr & ", imprimeur non
créé", _
' vbOKOnly, "CREATION D'UN IMPRIMEUR"
Me.T100_nom_client.SetFocus
End If

End Sub

"Richard Martin" a écrit dans le message de news:
eTlMf$n$
Bonjour

Vous connaissez le message d'Access quand il nous dis que nous avons
entré un doublon. Je me demandais si c'était possible de modifier ce
grand message compliqué pour un débutant par un message personnalisé
comme par exemple : (Vous avez essayé d'entrer un client dont le numéro
existe déjà.). L'histoire des violations de clé etc., je ne veux pas
voir ça devant les usagés de la base de données. J'utilise des
formulaires pour l'entré des données. Que ce soir par programmation,
macro etc., si vous avez une solution je suis preneur. En vous
remerçiant d'avance, je vous souhaite une bonne journée.

P.S. Access 2003 en environnement Windows XP

Richard











Avatar
Richard Martin
J'ai essayé cette solution et c'est celle que je préfère même si l'autre
solution est très intéressante. Il me reste un petit problème. Mon message
d'erreur s'Affiche bien quand j'ai un doublon, mais il y a un autre message
généré par Access après qui me parle de mauvaise données. Mes données sont
bonnes. Comment désactiver les messages d'erreur quand le mien s'est déja
affiché ?

Merci !

Richard
"Eric" a écrit dans le message de news:
eCmABuq$
Bonjour,

Faire le contrôle sur l'évènement avant Mise à jour dudit contrôle, non ?

Par exemple :

Private Sub NomChampAControler_BeforeUpdate(Cancel As Integer)
Dim nb As Integer
nb = DCount("*", "Archive", "NomChampAControler=" &
Me.NomChampAControler)
If nb > 0 Then
Cancel = True
MsgBox "Existe déjà"
'...
End If
End Sub

Si NomChampAControler est de type texte , modifier le dcount en:
nb = DCount("*", "Archive", "NomChampAControler='" & Me.NomChampAControler
& "'")

Bonjour

Comment met-on ça dans le On error de la propriété d'un champ de
formulaire. Le dernier champ du formulaire est celui qui doit contenir la
vérification du doublon dans la propriété avant mise à jour ? Comment
procéder exactemen ?

Merci.



--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr



Avatar
Richard Martin
C'est beau le message ne s'affiche plus. J'avais une ligne CANCEL = TRUE et
je l'ai enlevé et plus de problème. Je ne sais pas trop pourquoi ? A quoi
sert cette commande ?

En tous les cas merci !

Richard Martin

"Richard Martin" a écrit dans le message de news:
%23JnFekv$
J'ai essayé cette solution et c'est celle que je préfère même si l'autre
solution est très intéressante. Il me reste un petit problème. Mon
message d'erreur s'Affiche bien quand j'ai un doublon, mais il y a un
autre message généré par Access après qui me parle de mauvaise données.
Mes données sont bonnes. Comment désactiver les messages d'erreur quand
le mien s'est déja affiché ?

Merci !

Richard
"Eric" a écrit dans le message de news:
eCmABuq$
Bonjour,

Faire le contrôle sur l'évènement avant Mise à jour dudit contrôle, non ?

Par exemple :

Private Sub NomChampAControler_BeforeUpdate(Cancel As Integer)
Dim nb As Integer
nb = DCount("*", "Archive", "NomChampAControler=" &
Me.NomChampAControler)
If nb > 0 Then
Cancel = True
MsgBox "Existe déjà"
'...
End If
End Sub

Si NomChampAControler est de type texte , modifier le dcount en:
nb = DCount("*", "Archive", "NomChampAControler='" &
Me.NomChampAControler & "'")

Bonjour

Comment met-on ça dans le On error de la propriété d'un champ de
formulaire. Le dernier champ du formulaire est celui qui doit contenir
la vérification du doublon dans la propriété avant mise à jour ? Comment
procéder exactemen ?

Merci.



--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr