-----Message d'origine-----
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existant
pas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveau
client.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![Liste_Etats_Anglais] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, mais je
trouve que ce serait
plus "propre" s'il notait le nom inconnu dans la liste
dans le champs
nomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas son
résultat) de double clic se fasse dans le NotInList,
après acceptation du
message de confirmation et que [NomFamille]=NewData.
Le problème c'est que je n'y arrive pas seul.
Merci de vos z'avis z'avisés,
JM
.
-----Message d'origine-----
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existant
pas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveau
client.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![Liste_Etats_Anglais] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, mais je
trouve que ce serait
plus "propre" s'il notait le nom inconnu dans la liste
dans le champs
nomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas son
résultat) de double clic se fasse dans le NotInList,
après acceptation du
message de confirmation et que [NomFamille]=NewData.
Le problème c'est que je n'y arrive pas seul.
Merci de vos z'avis z'avisés,
JM
.
-----Message d'origine-----
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existant
pas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveau
client.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![Liste_Etats_Anglais] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, mais je
trouve que ce serait
plus "propre" s'il notait le nom inconnu dans la liste
dans le champs
nomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas son
résultat) de double clic se fasse dans le NotInList,
après acceptation du
message de confirmation et que [NomFamille]=NewData.
Le problème c'est que je n'y arrive pas seul.
Merci de vos z'avis z'avisés,
JM
.
-----Message d'origine-----
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existant
pas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveau
client.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![Liste_Etats_Anglais] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, mais je
trouve que ce serait
plus "propre" s'il notait le nom inconnu dans la liste
dans le champs
nomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas son
résultat) de double clic se fasse dans le NotInList,
après acceptation du
message de confirmation et que [NomFamille]=NewData.
Le problème c'est que je n'y arrive pas seul.
Merci de vos z'avis z'avisés,
JM
.
-----Message d'origine-----
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existant
pas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveau
client.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![Liste_Etats_Anglais] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, mais je
trouve que ce serait
plus "propre" s'il notait le nom inconnu dans la liste
dans le champs
nomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas son
résultat) de double clic se fasse dans le NotInList,
après acceptation du
message de confirmation et que [NomFamille]=NewData.
Le problème c'est que je n'y arrive pas seul.
Merci de vos z'avis z'avisés,
JM
.
-----Message d'origine-----
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existant
pas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveau
client.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![Liste_Etats_Anglais] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, mais je
trouve que ce serait
plus "propre" s'il notait le nom inconnu dans la liste
dans le champs
nomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas son
résultat) de double clic se fasse dans le NotInList,
après acceptation du
message de confirmation et que [NomFamille]=NewData.
Le problème c'est que je n'y arrive pas seul.
Merci de vos z'avis z'avisés,
JM
.
-----Message d'origine-----
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
-----Message d'origine-----
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
-----Message d'origine-----
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
-----Message d'origine-----
J'ai eu des pbl avec le serveur il semble.
Je te renvois ce que j'ai essayé d'envoyer aujourd'hui :
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existant
pas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveau
client.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![ListeNomFamille] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, et je
compte garder ce bouton
pour le cas d'un autre client avec le même nom, mais je
trouve que ce serait
plus "propre" s'il notait le nom inconnu dans la liste
dans le champs
nomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas son
résultat) de double clic se fasse dans le NotInList,
après acceptation du
message de confirmation et que [NomFamille]=NewData.
J'ai mis ceci sur le NotInList :
Private Sub ListeNomFamille_NotInList(NewData As String,
Response As
Integer)
On Error Resume Next
Dim NouveauNom
If MsgBox("Le contact '" & NewData & "' n'existe pas
dans la base de
données." & Chr(10) & Chr(13) & "Voulez-vous l'ajouter à
la liste ?", _
vbYesNo + vbQuestion, "Valeur inconnue") = vbYes
Then
Response = acDataErrAdded
ListeNomFamille.RowSource =
ListNomFamille.RowSource & ";" &
NomPropre(NewData)
NouveauNom = NomPropre(Me.[ListeNomFamille].Text)
Me.[ListeNomFamille] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToPage 1
DoCmd.GoToControl "Prénom"
[NomFamille] = NouveauNom
DoCmd.GoToRecord , , acPrevious
DoCmd.GoToRecord , , acNext
NomFamille.TabStop = False
Me.ListeNomFamille.Requery
Else
Response = acDataErrContinue
Me!ListeNomFamille.Undo
End If
' MsgBox "Ce nom n'existe pas dans la liste." & Chr
(10) & Chr(13) &
"Cliquez deux fois sur ce champ pour ajouter un nouveau
contact.",
vbExclamation, "Nom inexistant"
' Response = acDataErrContinue
End Sub
Théoriquement, avec le Response = acDataErrAdded il est
sencé ne plus
m'envoyer le message me signalant que le nom n'est pas
dans la liste.
Seulement il continue de l'envoyer (Pourquoi ?).
De même, le ListeNomFamille.RowSource =
ListNomFamille.RowSource & ";" &
NomPropre(NewData) est sencé ajouté le nouveau nom à la
liste, mais il ne
le fait pas plus.
Pour éviter le message d'absence dans la liste, je dois
le faire reculer
d'un record puis le faire avancer d'un record. Ce n'est
pas propre comme
méthode. Comment je fais proprement ?
Pour finir, que je le fasse revenir en arrière ou pas, il
me met la
RéfClient (Le champs lié à la liste) dans le champs
prénom. Pas pratique non
plus.
Je suis sur qu'il y a moyen de faire tout ça plus
proprement. Mais comment
??
Merci de vos z'avis z'avisés,
JM
"Eric" a écrit dans le message de
news:1040601c3f272$68621dc0$
Bonsoir JM,
Je crois que tu veux tout faire à la fois.
J'ai une sol à te proposer mais suis pas sûr que ca te
convienne.
Faut abandonner la proc évènementielle Not_In_List.
Donc donnes moi exactement ce que tu veux faire avec ton
form(j'ai vu que tu avais mis une autre combo pour les
pays !!!)
A++
Eric-----Message d'origine-----
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis malexprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante surle nom du client. Lorsque j'ajoute la proc classique sur
NotInList, ilajoute effectivement le nouveau nom, mais reste sur
l'enregistrement surlequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveauclient. Le pbl c'est que je suis déjà dans le form,
puisque c'est le mêmequi me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existantpas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveauclient.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![Liste_Etats_Anglais] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, mais je
trouve que ce seraitplus "propre" s'il notait le nom inconnu dans la liste
dans le champsnomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas sonrésultat) de double clic se fasse dans le NotInList,
après acceptation dumessage de confirmation et que [NomFamille]=NewData.
Le problème c'est que je n'y arrive pas seul.
Merci de vos z'avis z'avisés,
JM
.
.
-----Message d'origine-----
J'ai eu des pbl avec le serveur il semble.
Je te renvois ce que j'ai essayé d'envoyer aujourd'hui :
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existant
pas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveau
client.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![ListeNomFamille] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, et je
compte garder ce bouton
pour le cas d'un autre client avec le même nom, mais je
trouve que ce serait
plus "propre" s'il notait le nom inconnu dans la liste
dans le champs
nomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas son
résultat) de double clic se fasse dans le NotInList,
après acceptation du
message de confirmation et que [NomFamille]=NewData.
J'ai mis ceci sur le NotInList :
Private Sub ListeNomFamille_NotInList(NewData As String,
Response As
Integer)
On Error Resume Next
Dim NouveauNom
If MsgBox("Le contact '" & NewData & "' n'existe pas
dans la base de
données." & Chr(10) & Chr(13) & "Voulez-vous l'ajouter à
la liste ?", _
vbYesNo + vbQuestion, "Valeur inconnue") = vbYes
Then
Response = acDataErrAdded
ListeNomFamille.RowSource =
ListNomFamille.RowSource & ";" &
NomPropre(NewData)
NouveauNom = NomPropre(Me.[ListeNomFamille].Text)
Me.[ListeNomFamille] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToPage 1
DoCmd.GoToControl "Prénom"
[NomFamille] = NouveauNom
DoCmd.GoToRecord , , acPrevious
DoCmd.GoToRecord , , acNext
NomFamille.TabStop = False
Me.ListeNomFamille.Requery
Else
Response = acDataErrContinue
Me!ListeNomFamille.Undo
End If
' MsgBox "Ce nom n'existe pas dans la liste." & Chr
(10) & Chr(13) &
"Cliquez deux fois sur ce champ pour ajouter un nouveau
contact.",
vbExclamation, "Nom inexistant"
' Response = acDataErrContinue
End Sub
Théoriquement, avec le Response = acDataErrAdded il est
sencé ne plus
m'envoyer le message me signalant que le nom n'est pas
dans la liste.
Seulement il continue de l'envoyer (Pourquoi ?).
De même, le ListeNomFamille.RowSource =
ListNomFamille.RowSource & ";" &
NomPropre(NewData) est sencé ajouté le nouveau nom à la
liste, mais il ne
le fait pas plus.
Pour éviter le message d'absence dans la liste, je dois
le faire reculer
d'un record puis le faire avancer d'un record. Ce n'est
pas propre comme
méthode. Comment je fais proprement ?
Pour finir, que je le fasse revenir en arrière ou pas, il
me met la
RéfClient (Le champs lié à la liste) dans le champs
prénom. Pas pratique non
plus.
Je suis sur qu'il y a moyen de faire tout ça plus
proprement. Mais comment
??
Merci de vos z'avis z'avisés,
JM
"Eric" <f_fram@hotmail.com> a écrit dans le message de
news:1040601c3f272$68621dc0$a501280a@phx.gbl...
Bonsoir JM,
Je crois que tu veux tout faire à la fois.
J'ai une sol à te proposer mais suis pas sûr que ca te
convienne.
Faut abandonner la proc évènementielle Not_In_List.
Donc donnes moi exactement ce que tu veux faire avec ton
form(j'ai vu que tu avais mis une autre combo pour les
pays !!!)
A++
Eric
-----Message d'origine-----
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existant
pas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveau
client.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![Liste_Etats_Anglais] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, mais je
trouve que ce serait
plus "propre" s'il notait le nom inconnu dans la liste
dans le champs
nomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas son
résultat) de double clic se fasse dans le NotInList,
après acceptation du
message de confirmation et que [NomFamille]=NewData.
Le problème c'est que je n'y arrive pas seul.
Merci de vos z'avis z'avisés,
JM
.
.
-----Message d'origine-----
J'ai eu des pbl avec le serveur il semble.
Je te renvois ce que j'ai essayé d'envoyer aujourd'hui :
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existant
pas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveau
client.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![ListeNomFamille] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, et je
compte garder ce bouton
pour le cas d'un autre client avec le même nom, mais je
trouve que ce serait
plus "propre" s'il notait le nom inconnu dans la liste
dans le champs
nomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas son
résultat) de double clic se fasse dans le NotInList,
après acceptation du
message de confirmation et que [NomFamille]=NewData.
J'ai mis ceci sur le NotInList :
Private Sub ListeNomFamille_NotInList(NewData As String,
Response As
Integer)
On Error Resume Next
Dim NouveauNom
If MsgBox("Le contact '" & NewData & "' n'existe pas
dans la base de
données." & Chr(10) & Chr(13) & "Voulez-vous l'ajouter à
la liste ?", _
vbYesNo + vbQuestion, "Valeur inconnue") = vbYes
Then
Response = acDataErrAdded
ListeNomFamille.RowSource =
ListNomFamille.RowSource & ";" &
NomPropre(NewData)
NouveauNom = NomPropre(Me.[ListeNomFamille].Text)
Me.[ListeNomFamille] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToPage 1
DoCmd.GoToControl "Prénom"
[NomFamille] = NouveauNom
DoCmd.GoToRecord , , acPrevious
DoCmd.GoToRecord , , acNext
NomFamille.TabStop = False
Me.ListeNomFamille.Requery
Else
Response = acDataErrContinue
Me!ListeNomFamille.Undo
End If
' MsgBox "Ce nom n'existe pas dans la liste." & Chr
(10) & Chr(13) &
"Cliquez deux fois sur ce champ pour ajouter un nouveau
contact.",
vbExclamation, "Nom inexistant"
' Response = acDataErrContinue
End Sub
Théoriquement, avec le Response = acDataErrAdded il est
sencé ne plus
m'envoyer le message me signalant que le nom n'est pas
dans la liste.
Seulement il continue de l'envoyer (Pourquoi ?).
De même, le ListeNomFamille.RowSource =
ListNomFamille.RowSource & ";" &
NomPropre(NewData) est sencé ajouté le nouveau nom à la
liste, mais il ne
le fait pas plus.
Pour éviter le message d'absence dans la liste, je dois
le faire reculer
d'un record puis le faire avancer d'un record. Ce n'est
pas propre comme
méthode. Comment je fais proprement ?
Pour finir, que je le fasse revenir en arrière ou pas, il
me met la
RéfClient (Le champs lié à la liste) dans le champs
prénom. Pas pratique non
plus.
Je suis sur qu'il y a moyen de faire tout ça plus
proprement. Mais comment
??
Merci de vos z'avis z'avisés,
JM
"Eric" a écrit dans le message de
news:1040601c3f272$68621dc0$
Bonsoir JM,
Je crois que tu veux tout faire à la fois.
J'ai une sol à te proposer mais suis pas sûr que ca te
convienne.
Faut abandonner la proc évènementielle Not_In_List.
Donc donnes moi exactement ce que tu veux faire avec ton
form(j'ai vu que tu avais mis une autre combo pour les
pays !!!)
A++
Eric-----Message d'origine-----
Tout d'abord merci à Eric et à Raymond pour leur aide.
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis malexprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante surle nom du client. Lorsque j'ajoute la proc classique sur
NotInList, ilajoute effectivement le nouveau nom, mais reste sur
l'enregistrement surlequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveauclient. Le pbl c'est que je suis déjà dans le form,
puisque c'est le mêmequi me sert pour consulter et pour encoder.
Avant, sur NotInList j'envoyais un message signalant que
ce nom n'existantpas et qu'il fallait cliquer 2 fois sur le champs pour
encoder un nouveauclient.
Sur le double clic j'avais :
Private Sub ListeNomFamille_DblClick(Cancel As Integer)
On Error GoTo Err_ListeNomFamille_Click
Me![Liste_Etats_Anglais] = ""
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Prénom"
Exit_ListeNomFamille_Click:
Exit Sub
Err_ListeNomFamille_Click:
MsgBox Err.Description
Resume Exit_ListeNomFamille_Click
End Sub
Ca fonctionne bien, la question n'est pas là, mais je
trouve que ce seraitplus "propre" s'il notait le nom inconnu dans la liste
dans le champsnomFamille.
En fait, ce que je cherche, c'est à ce que ma proc (ou en
tout cas sonrésultat) de double clic se fasse dans le NotInList,
après acceptation dumessage de confirmation et que [NomFamille]=NewData.
Le problème c'est que je n'y arrive pas seul.
Merci de vos z'avis z'avisés,
JM
.
.
-----Message d'origine-----
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
-----Message d'origine-----
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.
-----Message d'origine-----
Toute fois ce que je cherche n'est pas tout à fait ça.
Soit je me suis mal
exprimé, soit je n'ai pas donné assez d'info (soit les2.
Lol).
Pour mémoire, j'ai un form avec mes clients. J'ai une
liste déroulante sur
le nom du client. Lorsque j'ajoute la proc classique sur
NotInList, il
ajoute effectivement le nouveau nom, mais reste sur
l'enregistrement sur
lequel il était.
Eric m'a proposé d'ouvrir un autre form pour encoder les
données du nouveau
client. Le pbl c'est que je suis déjà dans le form,
puisque c'est le même
qui me sert pour consulter et pour encoder.