Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Message d'erreur si données correspondent au donnée d'une autre ta

26 réponses
Avatar
Carolyn
Bonjour,

J'ai écrit il y a quelques jours concernant mon problème. J'aimerais, si
possible, pouvoir créer un message d'erreur si on entre des données dans une
table qui sont déjà entrées dans une autre.

Pour être plus précise, j'ai créé une base de données qui fait un suivi de
tous les ressources qui postulent pour un poste à l'intérieur de mon
entreprise. Nous voulons donc créer une "Blacklist", c'est-à-dire une liste
de gens qu'on ne voudra jamais engager pour notre entreprise. Ainsi, dans la
table de candidature, au lieu de prendre pour acquis que la personne qui
entrera les données va connaître tous les noms de la Blacklist par coeur, il
serait utile qu'un message d'erreur survienne lorsque un de ces noms est
entré.

On m'a dit de me référer à un programmeur pour ceci. Quelqu'un peut m'aider??

Merci infiniment!
Carolyn

10 réponses

1 2 3
Avatar
Fabien
Bonjour,

J'ai écrit il y a quelques jours concernant mon problème. J'aimerais, si
possible, pouvoir créer un message d'erreur si on entre des données dans une
table qui sont déjà entrées dans une autre.

Pour être plus précise, j'ai créé une base de données qui fait un suivi de
tous les ressources qui postulent pour un poste à l'intérieur de mon
entreprise. Nous voulons donc créer une "Blacklist", c'est-à-dire une liste
de gens qu'on ne voudra jamais engager pour notre entreprise. Ainsi, dans la
table de candidature, au lieu de prendre pour acquis que la personne qui
entrera les données va connaître tous les noms de la Blacklist par coeur, il
serait utile qu'un message d'erreur survienne lorsque un de ces noms est
entré.

On m'a dit de me référer à un programmeur pour ceci. Quelqu'un peut m'aider??

Merci infiniment!
Carolyn
Bonjour Carolyn.

Si ta black-list est une table indépendante de celle dans laquelle tu
effectue ta saisi :
Si le champ se nomme Nom_Postulant :
Dans l'évenement
Sub AfterUpdate_Nom_Postulant()
Dim Existe as Boolean
Existe=nz(Dlookup("[Nom_black_list]";"BlackList";"[Nom_black_list] = '"
& Me.Nom_Postulant & "'"),False)
If Existe then
Msgbox "Attention ce postulant est dans la black list !!!"
Cancel=True
End if
End sub

A tester
Fabien

Avatar
Carolyn
Merci Fabien, je vais essayer ça, mais où dois-je l'inscrire?? Je ne vois pas
d' "événement"... et je dois entrer ceci pour mon champs qui s'intitule
"Ressource" dans la table de candidatures??

Merci encore,
Carolyn


Bonjour,

J'ai écrit il y a quelques jours concernant mon problème. J'aimerais, si
possible, pouvoir créer un message d'erreur si on entre des données dans une
table qui sont déjà entrées dans une autre.

Pour être plus précise, j'ai créé une base de données qui fait un suivi de
tous les ressources qui postulent pour un poste à l'intérieur de mon
entreprise. Nous voulons donc créer une "Blacklist", c'est-à-dire une liste
de gens qu'on ne voudra jamais engager pour notre entreprise. Ainsi, dans la
table de candidature, au lieu de prendre pour acquis que la personne qui
entrera les données va connaître tous les noms de la Blacklist par coeur, il
serait utile qu'un message d'erreur survienne lorsque un de ces noms est
entré.

On m'a dit de me référer à un programmeur pour ceci. Quelqu'un peut m'aider??

Merci infiniment!
Carolyn
Bonjour Carolyn.

Si ta black-list est une table indépendante de celle dans laquelle tu
effectue ta saisi :
Si le champ se nomme Nom_Postulant :
Dans l'évenement
Sub AfterUpdate_Nom_Postulant()
Dim Existe as Boolean
Existe=nz(Dlookup("[Nom_black_list]";"BlackList";"[Nom_black_list] = '"
& Me.Nom_Postulant & "'"),False)
If Existe then
Msgbox "Attention ce postulant est dans la black list !!!"
Cancel=True
End if
End sub

A tester
Fabien




Avatar
Fabien
Merci Fabien, je vais essayer ça, mais où dois-je l'inscrire?? Je ne vois pas
d' "événement"... et je dois entrer ceci pour mon champs qui s'intitule
"Ressource" dans la table de candidatures??

Merci encore,
Carolyn


Bonjour,

J'ai écrit il y a quelques jours concernant mon problème. J'aimerais, si
possible, pouvoir créer un message d'erreur si on entre des données dans une
table qui sont déjà entrées dans une autre.

Pour être plus précise, j'ai créé une base de données qui fait un suivi de
tous les ressources qui postulent pour un poste à l'intérieur de mon
entreprise. Nous voulons donc créer une "Blacklist", c'est-à-dire une liste
de gens qu'on ne voudra jamais engager pour notre entreprise. Ainsi, dans la
table de candidature, au lieu de prendre pour acquis que la personne qui
entrera les données va connaître tous les noms de la Blacklist par coeur, il
serait utile qu'un message d'erreur survienne lorsque un de ces noms est
entré.

On m'a dit de me référer à un programmeur pour ceci. Quelqu'un peut m'aider??

Merci infiniment!
Carolyn
Bonjour Carolyn.

Si ta black-list est une table indépendante de celle dans laquelle tu
effectue ta saisi :
Si le champ se nomme Nom_Postulant :
Dans l'évenement
Sub AfterUpdate_Nom_Postulant()
Dim Existe as Boolean
Existe=nz(Dlookup("[Nom_black_list]";"BlackList";"[Nom_black_list] = '"
& Me.Nom_Postulant & "'"),False)
If Existe then
Msgbox "Attention ce postulant est dans la black list !!!"
Cancel=True
End if
End sub

A tester
Fabien

Tu ouvres ton formulaire en mode modification. Tu selectionne ton


controle dans lequel tu fais saisir le nom du postulant. Tu clic
droit>propriétés.
Dans l'onglet evenements tu trouvera "Aprés Mise a jour".Tu clic dans la
case , tu choisi [Procedure evenementielle],puis tu clic sur ... qui
apparait en bout de case et tu arrive (enfin) là où il faut saisir ce code.
Bon courage !



Avatar
Carolyn
Bonjour Fabien,

J'ai essayé ton code. Quand je l'ai testé en entrant le nom d'une personne
sur la blacklist, une fenêtre de Microsoft Visual Basic s'est ouvert et non
le message d'erreur. Dans cette fenêtre, il n'y avait que le code que tu m'as
fourni.

Le champs où on entre le nom du postulant s'intitule "Ressource" et se
trouve dans la table "Applications", qui est en effet une table indépendante
de la table "Blacklist".

Pour être certain, voici le code qui y apparaît:

Option Compare Database

Private Sub Ressource_AfterUpdate()
Sub AfterUpdate_Ressource()
Dim Existe As Boolean
Existe=nz(Dlookup("[Nom_blacklist]";"BlackList";"[Nom_blacklist] = '"
& Me.Ressource & "'"),False)
If Existe Then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If
End Sub

End Sub


Merci Fabien, je vais essayer ça, mais où dois-je l'inscrire?? Je ne vois pas
d' "événement"... et je dois entrer ceci pour mon champs qui s'intitule
"Ressource" dans la table de candidatures??

Merci encore,
Carolyn


Bonjour,

J'ai écrit il y a quelques jours concernant mon problème. J'aimerais, si
possible, pouvoir créer un message d'erreur si on entre des données dans une
table qui sont déjà entrées dans une autre.

Pour être plus précise, j'ai créé une base de données qui fait un suivi de
tous les ressources qui postulent pour un poste à l'intérieur de mon
entreprise. Nous voulons donc créer une "Blacklist", c'est-à-dire une liste
de gens qu'on ne voudra jamais engager pour notre entreprise. Ainsi, dans la
table de candidature, au lieu de prendre pour acquis que la personne qui
entrera les données va connaître tous les noms de la Blacklist par coeur, il
serait utile qu'un message d'erreur survienne lorsque un de ces noms est
entré.

On m'a dit de me référer à un programmeur pour ceci. Quelqu'un peut m'aider??

Merci infiniment!
Carolyn
Bonjour Carolyn.

Si ta black-list est une table indépendante de celle dans laquelle tu
effectue ta saisi :
Si le champ se nomme Nom_Postulant :
Dans l'évenement
Sub AfterUpdate_Nom_Postulant()
Dim Existe as Boolean
Existe=nz(Dlookup("[Nom_black_list]";"BlackList";"[Nom_black_list] = '"
& Me.Nom_Postulant & "'"),False)
If Existe then
Msgbox "Attention ce postulant est dans la black list !!!"
Cancel=True
End if
End sub

A tester
Fabien

Tu ouvres ton formulaire en mode modification. Tu selectionne ton


controle dans lequel tu fais saisir le nom du postulant. Tu clic
droit>propriétés.
Dans l'onglet evenements tu trouvera "Aprés Mise a jour".Tu clic dans la
case , tu choisi [Procedure evenementielle],puis tu clic sur ... qui
apparait en bout de case et tu arrive (enfin) là où il faut saisir ce code.
Bon courage !






Avatar
Fabien
Bonjour Fabien,

J'ai essayé ton code. Quand je l'ai testé en entrant le nom d'une personne
sur la blacklist, une fenêtre de Microsoft Visual Basic s'est ouvert et non
le message d'erreur. Dans cette fenêtre, il n'y avait que le code que tu m'as
fourni.

Le champs où on entre le nom du postulant s'intitule "Ressource" et se
trouve dans la table "Applications", qui est en effet une table indépendante
de la table "Blacklist".

Pour être certain, voici le code qui y apparaît:

Option Compare Database

Private Sub Ressource_AfterUpdate()
Sub AfterUpdate_Ressource()
Dim Existe As Boolean
Existe=nz(Dlookup("[Nom_blacklist]";"BlackList";"[Nom_blacklist] = '"
& Me.Ressource & "'"),False)
If Existe Then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If
End Sub

End Sub


Merci Fabien, je vais essayer ça, mais où dois-je l'inscrire?? Je ne vois pas
d' "événement"... et je dois entrer ceci pour mon champs qui s'intitule
"Ressource" dans la table de candidatures??

Merci encore,
Carolyn


Bonjour,

J'ai écrit il y a quelques jours concernant mon problème. J'aimerais, si
possible, pouvoir créer un message d'erreur si on entre des données dans une
table qui sont déjà entrées dans une autre.

Pour être plus précise, j'ai créé une base de données qui fait un suivi de
tous les ressources qui postulent pour un poste à l'intérieur de mon
entreprise. Nous voulons donc créer une "Blacklist", c'est-à-dire une liste
de gens qu'on ne voudra jamais engager pour notre entreprise. Ainsi, dans la
table de candidature, au lieu de prendre pour acquis que la personne qui
entrera les données va connaître tous les noms de la Blacklist par coeur, il
serait utile qu'un message d'erreur survienne lorsque un de ces noms est
entré.

On m'a dit de me référer à un programmeur pour ceci. Quelqu'un peut m'aider??

Merci infiniment!
Carolyn
Bonjour Carolyn.

Si ta black-list est une table indépendante de celle dans laquelle tu
effectue ta saisi :
Si le champ se nomme Nom_Postulant :
Dans l'évenement
Sub AfterUpdate_Nom_Postulant()
Dim Existe as Boolean
Existe=nz(Dlookup("[Nom_black_list]";"BlackList";"[Nom_black_list] = '"
& Me.Nom_Postulant & "'"),False)
If Existe then
Msgbox "Attention ce postulant est dans la black list !!!"
Cancel=True
End if
End sub

A tester
Fabien

Tu ouvres ton formulaire en mode modification. Tu selectionne ton


controle dans lequel tu fais saisir le nom du postulant. Tu clic
droit>propriétés.
Dans l'onglet evenements tu trouvera "Aprés Mise a jour".Tu clic dans la
case , tu choisi [Procedure evenementielle],puis tu clic sur ... qui
apparait en bout de case et tu arrive (enfin) là où il faut saisir ce code.
Bon courage !

Bonjour


Petites corrections
Option Compare Database

Private Sub Ressource_AfterUpdate()
Sub AfterUpdate_Ressource()<---- a enlever

Dim Existe As Boolean
Existe=nz(Dlookup("[Nom_blacklist]";"BlackList";"[Nom_blacklist] = '"
& Me.Ressource & "'"),False)
If Existe Then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If
End Sub <-- à enlever


End Sub


Dans le code il y a toujour un début et une fin
Si tu met un 'Sub' il faut un 'End Sub'
Ces deux mot indique où commence et où finis le code d'une procedure
(Sub) ou d'une fonction (Function , End Func)
et autant pour moi (mea coulpa ..) j'ai mal orthographier :
AfterUpdate_Ressource c'est n'importe quoi ;-)
A +





Avatar
Eric
Bonjour Fabien,

Existe étant déclaré en booléen, je ne pense pas que ça marche dans le
cas où DLookup() retourne une valeur (ici du texte).

il faudrait modifier ainsi, ne crois-tu pas ?

Supprimer la déclaration d'Existe et remplacer le test comme suit :

If Not IsNull(Dlookup("[Nom_blacklist]";"BlackList";"[Nom_blacklist] =
'" & Me.Ressource & "'")) then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If


Bonjour
Petites corrections
Option Compare Database

Private Sub Ressource_AfterUpdate()
Sub AfterUpdate_Ressource()<---- a enlever

Dim Existe As Boolean
Existe=nz(Dlookup("[Nom_blacklist]";"BlackList";"[Nom_blacklist]
= '"

& Me.Ressource & "'"),False)
If Existe Then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If
End Sub <-- à enlever


End Sub





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


Avatar
Fabien
Bonjour Fabien,

Existe étant déclaré en booléen, je ne pense pas que ça marche dans le
cas où DLookup() retourne une valeur (ici du texte).

il faudrait modifier ainsi, ne crois-tu pas ?

Supprimer la déclaration d'Existe et remplacer le test comme suit :

If Not IsNull(Dlookup("[Nom_blacklist]";"BlackList";"[Nom_blacklist] =
'" & Me.Ressource & "'")) then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If


Bonjour
Petites corrections
Option Compare Database

Private Sub Ressource_AfterUpdate()
Sub AfterUpdate_Ressource()<---- a enlever

Dim Existe As Boolean

Existe=nz(Dlookup("[Nom_blacklist]";"BlackList";"[Nom_blacklist] = '"

& Me.Ressource & "'"),False)
If Existe Then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If
End Sub <-- à enlever


End Sub





Oups !!!

Tout a Fait Eric ;-)



Avatar
Carolyn
OK

Maintenant le code est:

Private Sub Ressource_AfterUpdate()
Sub Dim Existe As Boolean
Existe=nz(Dlookup("[Nom_blacklist]";"BlackList";"[Nom_blacklist] = '"
& Me.Ressource & "'"),False)
If Not IsNull(Dlookup("[Nom_blacklist]";"BlackList";"[Nom_blacklist] '" & Me.Ressource & "'")) then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If

End Sub

Maintenant, chaque fois que j'entre n'importe quel nom dans "Ressource"
(même un nom qui n'est pas dans la blacklist), ça ouvre Microsoft Visual
Basic.

Le code est-il bon? Dans MVB, il a du texte en noir, en vert, et en rouge.
Est-ce normal??

Merci encore pour votre aide!!!!!
Carolyn
Avatar
Eric
Bonsoir,


Copies-colles ceci après avoir supprimé totalement ta procédure.

Private Sub Ressource_AfterUpdate()
If Not IsNull(DLookup("[Nom_blacklist]", "BlackList", _
"[Nom_blacklist] ='" & Me.Ressource & "'")) Then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If
End Sub

OK

Maintenant le code est:

Private Sub Ressource_AfterUpdate()
Sub Dim Existe As Boolean
Existe=nz(Dlookup("[Nom_blacklist]";"BlackList";"[Nom_blacklist] = '"
& Me.Ressource & "'"),False)
If Not IsNull(Dlookup("[Nom_blacklist]";"BlackList";"[Nom_blacklist] > '" & Me.Ressource & "'")) then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If

End Sub

Maintenant, chaque fois que j'entre n'importe quel nom dans "Ressource"
(même un nom qui n'est pas dans la blacklist), ça ouvre Microsoft Visual
Basic.

Le code est-il bon? Dans MVB, il a du texte en noir, en vert, et en rouge.
Est-ce normal??

Merci encore pour votre aide!!!!!
Carolyn


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

Avatar
Eric
Ooops, erreur.
Ce n'est pas sur APRES mise à jour mais AVANT. Donc ça devient:

Private Sub Ressource_BeforeUpdate(Cancel As Integer)
If Not IsNull(DLookup("[Nom_blacklist]", "BlackList", _
"[Nom_blacklist] ='" & Me.Ressource & "'")) Then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If
End Sub

Bonsoir,


Copies-colles ceci après avoir supprimé totalement ta procédure.

Private Sub Ressource_AfterUpdate()
If Not IsNull(DLookup("[Nom_blacklist]", "BlackList", _
"[Nom_blacklist] ='" & Me.Ressource & "'")) Then
MsgBox "Attention ce postulant est dans la blacklist !!!"
Cancel = True
End If
End Sub




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

1 2 3