Access2000 - rafraîchissement des sous-formulaires
12 réponses
Philou
Bonjour à tous,
Dans un formulaire, j'ai intégré une liste déroulante (contrôle indépendant
contenant juste SELECT [Fournisseurs].[Fournisseur] FROM Fournisseurs; ) où
Fournisseurs est une table ne contenant qu'un champ unique.
Je peux ainsi choisir un fournisseur et 2 sous-formulaires se mettent à
jour.
Jusque là, tout va bien.
Où ça se complique, c'est avec "NotInList".
J'utilise le procédé trouvé ici
http://www.self-access.com/access/index.php?url=%2Faccess%2Fgrenier
Mon nouveau nom entre bien dans ma table, mais ne s'affiche pas dans ma
liste déroulante.
En outre, mes 2 sous-formulaires pointent alors sur les données
correspondant au 1er fournisseur de la liste.
Qu'est-ce que j'ai oublié pour que mon formulaire et ses 2 sous-formulaires
correspondent au nouveau fournisseur, c'est-à-dire vide sauf la liste
déroulante ?
Mon nouveau nom entre bien dans ma table, mais ne s'affiche pas dans ma liste déroulante. En outre, mes 2 sous-formulaires pointent alors sur les données correspondant au 1er fournisseur de la liste.
Essaie peut être de rafraîchir ta liste en mettant à la suite du code pour ajouter l'élément un : me.NomDeTeListe.Requery
-- Charte du forum : http://users.skynet.be/mpfa/ Recherche dans les archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
"Philou" <philou.tery@free.fr> a écrit dans le message de news:
e%23V9xGYnFHA.3312@tk2msftngp13.phx.gbl...
Bonjour à tous,
Bonjour,
Mon nouveau nom entre bien dans ma table, mais ne s'affiche pas dans ma
liste déroulante.
En outre, mes 2 sous-formulaires pointent alors sur les données
correspondant au 1er fournisseur de la liste.
Essaie peut être de rafraîchir ta liste en mettant à la suite du code pour
ajouter l'élément un :
me.NomDeTeListe.Requery
--
Charte du forum : http://users.skynet.be/mpfa/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Mon nouveau nom entre bien dans ma table, mais ne s'affiche pas dans ma liste déroulante. En outre, mes 2 sous-formulaires pointent alors sur les données correspondant au 1er fournisseur de la liste.
Essaie peut être de rafraîchir ta liste en mettant à la suite du code pour ajouter l'élément un : me.NomDeTeListe.Requery
-- Charte du forum : http://users.skynet.be/mpfa/ Recherche dans les archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
JMH
Salut Si tu n'as rien dans ta liste déroulante, tu dois faire un me.MaListeDeroulante.requery Et là il va être intégré
"Philou" a écrit dans le message de news: e%
Bonjour à tous,
Dans un formulaire, j'ai intégré une liste déroulante (contrôle indépendant contenant juste SELECT [Fournisseurs].[Fournisseur] FROM Fournisseurs; ) où Fournisseurs est une table ne contenant qu'un champ unique. Je peux ainsi choisir un fournisseur et 2 sous-formulaires se mettent à jour. Jusque là, tout va bien.
Où ça se complique, c'est avec "NotInList". J'utilise le procédé trouvé ici http://www.self-access.com/access/index.php?url=%2Faccess%2Fgrenier
Mon nouveau nom entre bien dans ma table, mais ne s'affiche pas dans ma liste déroulante. En outre, mes 2 sous-formulaires pointent alors sur les données correspondant au 1er fournisseur de la liste.
Qu'est-ce que j'ai oublié pour que mon formulaire et ses 2 sous-formulaires correspondent au nouveau fournisseur, c'est-à-dire vide sauf la liste déroulante ?
Merci d'avance pour votre aide.
Philou.
Salut
Si tu n'as rien dans ta liste déroulante, tu dois faire un
me.MaListeDeroulante.requery
Et là il va être intégré
"Philou" <philou.tery@free.fr> a écrit dans le message de news:
e%23V9xGYnFHA.3312@tk2msftngp13.phx.gbl...
Bonjour à tous,
Dans un formulaire, j'ai intégré une liste déroulante (contrôle
indépendant contenant juste SELECT [Fournisseurs].[Fournisseur] FROM
Fournisseurs; ) où Fournisseurs est une table ne contenant qu'un champ
unique.
Je peux ainsi choisir un fournisseur et 2 sous-formulaires se mettent à
jour.
Jusque là, tout va bien.
Où ça se complique, c'est avec "NotInList".
J'utilise le procédé trouvé ici
http://www.self-access.com/access/index.php?url=%2Faccess%2Fgrenier
Mon nouveau nom entre bien dans ma table, mais ne s'affiche pas dans ma
liste déroulante.
En outre, mes 2 sous-formulaires pointent alors sur les données
correspondant au 1er fournisseur de la liste.
Qu'est-ce que j'ai oublié pour que mon formulaire et ses 2
sous-formulaires correspondent au nouveau fournisseur, c'est-à-dire vide
sauf la liste déroulante ?
Salut Si tu n'as rien dans ta liste déroulante, tu dois faire un me.MaListeDeroulante.requery Et là il va être intégré
"Philou" a écrit dans le message de news: e%
Bonjour à tous,
Dans un formulaire, j'ai intégré une liste déroulante (contrôle indépendant contenant juste SELECT [Fournisseurs].[Fournisseur] FROM Fournisseurs; ) où Fournisseurs est une table ne contenant qu'un champ unique. Je peux ainsi choisir un fournisseur et 2 sous-formulaires se mettent à jour. Jusque là, tout va bien.
Où ça se complique, c'est avec "NotInList". J'utilise le procédé trouvé ici http://www.self-access.com/access/index.php?url=%2Faccess%2Fgrenier
Mon nouveau nom entre bien dans ma table, mais ne s'affiche pas dans ma liste déroulante. En outre, mes 2 sous-formulaires pointent alors sur les données correspondant au 1er fournisseur de la liste.
Qu'est-ce que j'ai oublié pour que mon formulaire et ses 2 sous-formulaires correspondent au nouveau fournisseur, c'est-à-dire vide sauf la liste déroulante ?
Merci d'avance pour votre aide.
Philou.
Philou
[Réponse valable également pour JMH] Merci à tous les 2 Cette formule ne fonctionne pas. Après saisie d'un nom inexistant dans ma liste déroulante, j'ai bien le message me demandant si je veux l'ajouter. Une fois accepté, ma fenêtre VBA s'ouvre sur la ligne .requery. Je ferme la fenêtre VBA et j'ai une fenêtre d'insulte me disant que je dois choisir une donnée contenue dans ma liste. Celle-ci contient alors tous mes fournisseurs, sauf celui que je tente d'ajouter. Je dois fermer et réouvrir mon formulaire pour voir mon nouveau fournisseur. J'espère que ce presque pas-à-pas va permettre à quelqu'un de m'aiguiller vers la bonne correction.
Merci d'avance.
"Gafish" a écrit dans le message de news:
Essaie peut être de rafraîchir ta liste en mettant à la suite du code pour ajouter l'élément un : me.NomDeTeListe.Requery
[Réponse valable également pour JMH]
Merci à tous les 2
Cette formule ne fonctionne pas.
Après saisie d'un nom inexistant dans ma liste déroulante, j'ai bien le
message me demandant si je veux l'ajouter.
Une fois accepté, ma fenêtre VBA s'ouvre sur la ligne .requery.
Je ferme la fenêtre VBA et j'ai une fenêtre d'insulte me disant que je dois
choisir une donnée contenue dans ma liste.
Celle-ci contient alors tous mes fournisseurs, sauf celui que je tente
d'ajouter.
Je dois fermer et réouvrir mon formulaire pour voir mon nouveau fournisseur.
J'espère que ce presque pas-à-pas va permettre à quelqu'un de m'aiguiller
vers la bonne correction.
Merci d'avance.
"Gafish" <---gafish@free.fr----nospam> a écrit dans le message de news:
efwE0dYnFHA.2472@TK2MSFTNGP15.phx.gbl...
Essaie peut être de rafraîchir ta liste en mettant à la suite du code pour
ajouter l'élément un :
me.NomDeTeListe.Requery
[Réponse valable également pour JMH] Merci à tous les 2 Cette formule ne fonctionne pas. Après saisie d'un nom inexistant dans ma liste déroulante, j'ai bien le message me demandant si je veux l'ajouter. Une fois accepté, ma fenêtre VBA s'ouvre sur la ligne .requery. Je ferme la fenêtre VBA et j'ai une fenêtre d'insulte me disant que je dois choisir une donnée contenue dans ma liste. Celle-ci contient alors tous mes fournisseurs, sauf celui que je tente d'ajouter. Je dois fermer et réouvrir mon formulaire pour voir mon nouveau fournisseur. J'espère que ce presque pas-à-pas va permettre à quelqu'un de m'aiguiller vers la bonne correction.
Merci d'avance.
"Gafish" a écrit dans le message de news:
Essaie peut être de rafraîchir ta liste en mettant à la suite du code pour ajouter l'élément un : me.NomDeTeListe.Requery
Philou
///Risque de doublon : ma précédente réponse semblant perdue.
[Réponse valable également pour JMH] Merci à tous les 2 Cette formule ne fonctionne pas. Après saisie d'un nom inexistant dans ma liste déroulante, j'ai bien le message me demandant si je veux l'ajouter. Une fois accepté, ma fenêtre VBA s'ouvre sur la ligne .requery. Je ferme la fenêtre VBA et j'ai une fenêtre d'insulte me disant que je dois choisir une donnée contenue dans ma liste. Celle-ci contient alors tous mes fournisseurs, sauf celui que je tente d'ajouter. Je dois fermer et réouvrir mon formulaire pour voir mon nouveau fournisseur. J'espère que ce presque pas-à-pas va permettre à quelqu'un de m'aiguiller vers la bonne correction.
Merci d'avance.
"Gafish" a écrit dans le message de news:
Essaie peut être de rafraîchir ta liste en mettant à la suite du code pour ajouter l'élément un : me.NomDeTeListe.Requery
///Risque de doublon : ma précédente réponse semblant perdue.
[Réponse valable également pour JMH]
Merci à tous les 2
Cette formule ne fonctionne pas.
Après saisie d'un nom inexistant dans ma liste déroulante, j'ai bien le
message me demandant si je veux l'ajouter.
Une fois accepté, ma fenêtre VBA s'ouvre sur la ligne .requery.
Je ferme la fenêtre VBA et j'ai une fenêtre d'insulte me disant que je dois
choisir une donnée contenue dans ma liste.
Celle-ci contient alors tous mes fournisseurs, sauf celui que je tente
d'ajouter.
Je dois fermer et réouvrir mon formulaire pour voir mon nouveau fournisseur.
J'espère que ce presque pas-à-pas va permettre à quelqu'un de m'aiguiller
vers la bonne correction.
Merci d'avance.
"Gafish" <---gafish@free.fr----nospam> a écrit dans le message de news:
efwE0dYnFHA.2472@TK2MSFTNGP15.phx.gbl...
Essaie peut être de rafraîchir ta liste en mettant à la suite du code pour
ajouter l'élément un :
me.NomDeTeListe.Requery
///Risque de doublon : ma précédente réponse semblant perdue.
[Réponse valable également pour JMH] Merci à tous les 2 Cette formule ne fonctionne pas. Après saisie d'un nom inexistant dans ma liste déroulante, j'ai bien le message me demandant si je veux l'ajouter. Une fois accepté, ma fenêtre VBA s'ouvre sur la ligne .requery. Je ferme la fenêtre VBA et j'ai une fenêtre d'insulte me disant que je dois choisir une donnée contenue dans ma liste. Celle-ci contient alors tous mes fournisseurs, sauf celui que je tente d'ajouter. Je dois fermer et réouvrir mon formulaire pour voir mon nouveau fournisseur. J'espère que ce presque pas-à-pas va permettre à quelqu'un de m'aiguiller vers la bonne correction.
Merci d'avance.
"Gafish" a écrit dans le message de news:
Essaie peut être de rafraîchir ta liste en mettant à la suite du code pour ajouter l'élément un : me.NomDeTeListe.Requery
JMH
Salut Bon je ne vois pas ton code, mais Si tu as fais comme dans le site où c'est expliqué, tu rajoutes sur l'événement AfterUpdate de TaListe tu fais me.MaListe.Requery
et là tu auras avancé d'une case....
"Philou" a écrit dans le message de news:
///Risque de doublon : ma précédente réponse semblant perdue.
[Réponse valable également pour JMH] Merci à tous les 2 Cette formule ne fonctionne pas. Après saisie d'un nom inexistant dans ma liste déroulante, j'ai bien le message me demandant si je veux l'ajouter. Une fois accepté, ma fenêtre VBA s'ouvre sur la ligne .requery. Je ferme la fenêtre VBA et j'ai une fenêtre d'insulte me disant que je dois choisir une donnée contenue dans ma liste. Celle-ci contient alors tous mes fournisseurs, sauf celui que je tente d'ajouter. Je dois fermer et réouvrir mon formulaire pour voir mon nouveau fournisseur. J'espère que ce presque pas-à-pas va permettre à quelqu'un de m'aiguiller vers la bonne correction.
Merci d'avance.
"Gafish" a écrit dans le message de news:
Essaie peut être de rafraîchir ta liste en mettant à la suite du code pour ajouter l'élément un : me.NomDeTeListe.Requery
Salut
Bon je ne vois pas ton code, mais
Si tu as fais comme dans le site où c'est expliqué, tu rajoutes
sur l'événement AfterUpdate de TaListe tu fais
me.MaListe.Requery
et là tu auras avancé d'une case....
"Philou" <philou.tery@free.fr> a écrit dans le message de news:
OQ6IASZnFHA.320@TK2MSFTNGP09.phx.gbl...
///Risque de doublon : ma précédente réponse semblant perdue.
[Réponse valable également pour JMH]
Merci à tous les 2
Cette formule ne fonctionne pas.
Après saisie d'un nom inexistant dans ma liste déroulante, j'ai bien le
message me demandant si je veux l'ajouter.
Une fois accepté, ma fenêtre VBA s'ouvre sur la ligne .requery.
Je ferme la fenêtre VBA et j'ai une fenêtre d'insulte me disant que je
dois
choisir une donnée contenue dans ma liste.
Celle-ci contient alors tous mes fournisseurs, sauf celui que je tente
d'ajouter.
Je dois fermer et réouvrir mon formulaire pour voir mon nouveau
fournisseur.
J'espère que ce presque pas-à-pas va permettre à quelqu'un de m'aiguiller
vers la bonne correction.
Merci d'avance.
"Gafish" <---gafish@free.fr----nospam> a écrit dans le message de news:
efwE0dYnFHA.2472@TK2MSFTNGP15.phx.gbl...
Essaie peut être de rafraîchir ta liste en mettant à la suite du code
pour ajouter l'élément un :
me.NomDeTeListe.Requery
Salut Bon je ne vois pas ton code, mais Si tu as fais comme dans le site où c'est expliqué, tu rajoutes sur l'événement AfterUpdate de TaListe tu fais me.MaListe.Requery
et là tu auras avancé d'une case....
"Philou" a écrit dans le message de news:
///Risque de doublon : ma précédente réponse semblant perdue.
[Réponse valable également pour JMH] Merci à tous les 2 Cette formule ne fonctionne pas. Après saisie d'un nom inexistant dans ma liste déroulante, j'ai bien le message me demandant si je veux l'ajouter. Une fois accepté, ma fenêtre VBA s'ouvre sur la ligne .requery. Je ferme la fenêtre VBA et j'ai une fenêtre d'insulte me disant que je dois choisir une donnée contenue dans ma liste. Celle-ci contient alors tous mes fournisseurs, sauf celui que je tente d'ajouter. Je dois fermer et réouvrir mon formulaire pour voir mon nouveau fournisseur. J'espère que ce presque pas-à-pas va permettre à quelqu'un de m'aiguiller vers la bonne correction.
Merci d'avance.
"Gafish" a écrit dans le message de news:
Essaie peut être de rafraîchir ta liste en mettant à la suite du code pour ajouter l'élément un : me.NomDeTeListe.Requery
Philou
"JMH" a écrit dans le message de news:
... sur l'événement AfterUpdate de TaListe tu fais me.MaListe.Requery
Bonjour et merci pour ton attention
Avec cette manipulation, j'ai bien le nouveau nom dans ma liste, mais le choisir me renvoie les données du premier nom de la liste. Je n'ai au moins plus de message d'erreur.
Ci-après mon code expurgé :
Private Sub Form_AfterUpdate() Me.Requery End Sub
Private Sub FournisseurRecherché_AfterUpdate() Me!FournisseurRecherché.Requery ' Rechercher l'enregistrement correspondant au contrôle. Dim rs As Object Set rs = Me.Recordset.Clone rs.FindFirst "[Fournisseur] = '" & Me![FournisseurRecherché] & "'" Me.Bookmark = rs.Bookmark Me!TAF_Étiquette.Caption = UCase(Me![Fournisseur]) Me!FournisseurRecherché = Null End Sub
Private Sub FournisseurRecherché_NotInList(NewData As String, Response As Integer) 'http://www.self-access.com/access/index.php?url=%2Faccess%2Fgrenier Dim rst As DAO.Recordset If MsgBox("L'élément [" & _ NewData & "] ne figure pas dans la liste. Voulez-vous l'ajouter ?", _ vbQuestion + vbYesNo) = vbYes Then Set rst = CurrentDb.OpenRecordset("Fournisseurs") rst.AddNew rst!Fournisseur = NewData rst.Update rst.Close Set rst = Nothing End If Response = acDataErrAdded End Sub
"JMH" <abc@def.gh> a écrit dans le message de news:
uPpa3qfnFHA.1148@TK2MSFTNGP12.phx.gbl...
...
sur l'événement AfterUpdate de TaListe tu fais
me.MaListe.Requery
Bonjour et merci pour ton attention
Avec cette manipulation, j'ai bien le nouveau nom dans ma liste, mais le
choisir me renvoie les données du premier nom de la liste.
Je n'ai au moins plus de message d'erreur.
Ci-après mon code expurgé :
Private Sub Form_AfterUpdate()
Me.Requery
End Sub
Private Sub FournisseurRecherché_AfterUpdate()
Me!FournisseurRecherché.Requery
' Rechercher l'enregistrement correspondant au contrôle.
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[Fournisseur] = '" & Me![FournisseurRecherché] & "'"
Me.Bookmark = rs.Bookmark
Me!TAF_Étiquette.Caption = UCase(Me![Fournisseur])
Me!FournisseurRecherché = Null
End Sub
Private Sub FournisseurRecherché_NotInList(NewData As String, Response As
Integer)
'http://www.self-access.com/access/index.php?url=%2Faccess%2Fgrenier
Dim rst As DAO.Recordset
If MsgBox("L'élément [" & _
NewData & "] ne figure pas dans la liste. Voulez-vous l'ajouter ?", _
vbQuestion + vbYesNo) = vbYes Then
Set rst = CurrentDb.OpenRecordset("Fournisseurs")
rst.AddNew
rst!Fournisseur = NewData
rst.Update
rst.Close
Set rst = Nothing
End If
Response = acDataErrAdded
End Sub
... sur l'événement AfterUpdate de TaListe tu fais me.MaListe.Requery
Bonjour et merci pour ton attention
Avec cette manipulation, j'ai bien le nouveau nom dans ma liste, mais le choisir me renvoie les données du premier nom de la liste. Je n'ai au moins plus de message d'erreur.
Ci-après mon code expurgé :
Private Sub Form_AfterUpdate() Me.Requery End Sub
Private Sub FournisseurRecherché_AfterUpdate() Me!FournisseurRecherché.Requery ' Rechercher l'enregistrement correspondant au contrôle. Dim rs As Object Set rs = Me.Recordset.Clone rs.FindFirst "[Fournisseur] = '" & Me![FournisseurRecherché] & "'" Me.Bookmark = rs.Bookmark Me!TAF_Étiquette.Caption = UCase(Me![Fournisseur]) Me!FournisseurRecherché = Null End Sub
Private Sub FournisseurRecherché_NotInList(NewData As String, Response As Integer) 'http://www.self-access.com/access/index.php?url=%2Faccess%2Fgrenier Dim rst As DAO.Recordset If MsgBox("L'élément [" & _ NewData & "] ne figure pas dans la liste. Voulez-vous l'ajouter ?", _ vbQuestion + vbYesNo) = vbYes Then Set rst = CurrentDb.OpenRecordset("Fournisseurs") rst.AddNew rst!Fournisseur = NewData rst.Update rst.Close Set rst = Nothing End If Response = acDataErrAdded End Sub
JMH
Re Ta ligne Me!FournisseurRecherché.Requery doit être Me.FournisseurRecherché.Requery et dans d'autre ligne tu as la même chose avec Me!.
Difficile à te dire ce qui va pas par rapport à ce que je vois.
Soit tu debug ta routine pour voir si le champ "FournisseurRecherché" contient quelque chose, sinon tu mets un Msgbox "FournisseurRecherché" Bon courage
"Philou" a écrit dans le message de news:
"JMH" a écrit dans le message de news:
... sur l'événement AfterUpdate de TaListe tu fais me.MaListe.Requery
Bonjour et merci pour ton attention
Avec cette manipulation, j'ai bien le nouveau nom dans ma liste, mais le choisir me renvoie les données du premier nom de la liste. Je n'ai au moins plus de message d'erreur.
Ci-après mon code expurgé :
Private Sub Form_AfterUpdate() Me.Requery End Sub
Private Sub FournisseurRecherché_AfterUpdate() Me!FournisseurRecherché.Requery
' Rechercher l'enregistrement correspondant au contrôle. Dim rs As Object Set rs = Me.Recordset.Clone rs.FindFirst "[Fournisseur] = '" & Me![FournisseurRecherché] & "'" Me.Bookmark = rs.Bookmark Me!TAF_Étiquette.Caption = UCase(Me![Fournisseur]) Me!FournisseurRecherché = Null End Sub
Private Sub FournisseurRecherché_NotInList(NewData As String, Response As Integer) 'http://www.self-access.com/access/index.php?url=%2Faccess%2Fgrenier Dim rst As DAO.Recordset If MsgBox("L'élément [" & _ NewData & "] ne figure pas dans la liste. Voulez-vous l'ajouter ?", _ vbQuestion + vbYesNo) = vbYes Then Set rst = CurrentDb.OpenRecordset("Fournisseurs") rst.AddNew rst!Fournisseur = NewData rst.Update rst.Close Set rst = Nothing End If Response = acDataErrAdded End Sub
Re
Ta ligne Me!FournisseurRecherché.Requery doit être
Me.FournisseurRecherché.Requery et dans d'autre ligne tu as la même chose
avec Me!.
Difficile à te dire ce qui va pas par rapport à ce que je vois.
Soit tu debug ta routine pour voir si le champ "FournisseurRecherché"
contient quelque chose, sinon tu mets un Msgbox "FournisseurRecherché"
Bon courage
"Philou" <philou.tery@free.fr> a écrit dans le message de news:
elrPYPjnFHA.3900@TK2MSFTNGP09.phx.gbl...
"JMH" <abc@def.gh> a écrit dans le message de news:
uPpa3qfnFHA.1148@TK2MSFTNGP12.phx.gbl...
...
sur l'événement AfterUpdate de TaListe tu fais
me.MaListe.Requery
Bonjour et merci pour ton attention
Avec cette manipulation, j'ai bien le nouveau nom dans ma liste, mais le
choisir me renvoie les données du premier nom de la liste.
Je n'ai au moins plus de message d'erreur.
Ci-après mon code expurgé :
Private Sub Form_AfterUpdate()
Me.Requery
End Sub
Private Sub FournisseurRecherché_AfterUpdate()
Me!FournisseurRecherché.Requery
' Rechercher l'enregistrement correspondant au contrôle.
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[Fournisseur] = '" & Me![FournisseurRecherché] & "'"
Me.Bookmark = rs.Bookmark
Me!TAF_Étiquette.Caption = UCase(Me![Fournisseur])
Me!FournisseurRecherché = Null
End Sub
Private Sub FournisseurRecherché_NotInList(NewData As String, Response As
Integer)
'http://www.self-access.com/access/index.php?url=%2Faccess%2Fgrenier
Dim rst As DAO.Recordset
If MsgBox("L'élément [" & _
NewData & "] ne figure pas dans la liste. Voulez-vous l'ajouter ?", _
vbQuestion + vbYesNo) = vbYes Then
Set rst = CurrentDb.OpenRecordset("Fournisseurs")
rst.AddNew
rst!Fournisseur = NewData
rst.Update
rst.Close
Set rst = Nothing
End If
Response = acDataErrAdded
End Sub
Re Ta ligne Me!FournisseurRecherché.Requery doit être Me.FournisseurRecherché.Requery et dans d'autre ligne tu as la même chose avec Me!.
Difficile à te dire ce qui va pas par rapport à ce que je vois.
Soit tu debug ta routine pour voir si le champ "FournisseurRecherché" contient quelque chose, sinon tu mets un Msgbox "FournisseurRecherché" Bon courage
"Philou" a écrit dans le message de news:
"JMH" a écrit dans le message de news:
... sur l'événement AfterUpdate de TaListe tu fais me.MaListe.Requery
Bonjour et merci pour ton attention
Avec cette manipulation, j'ai bien le nouveau nom dans ma liste, mais le choisir me renvoie les données du premier nom de la liste. Je n'ai au moins plus de message d'erreur.
Ci-après mon code expurgé :
Private Sub Form_AfterUpdate() Me.Requery End Sub
Private Sub FournisseurRecherché_AfterUpdate() Me!FournisseurRecherché.Requery
' Rechercher l'enregistrement correspondant au contrôle. Dim rs As Object Set rs = Me.Recordset.Clone rs.FindFirst "[Fournisseur] = '" & Me![FournisseurRecherché] & "'" Me.Bookmark = rs.Bookmark Me!TAF_Étiquette.Caption = UCase(Me![Fournisseur]) Me!FournisseurRecherché = Null End Sub
Private Sub FournisseurRecherché_NotInList(NewData As String, Response As Integer) 'http://www.self-access.com/access/index.php?url=%2Faccess%2Fgrenier Dim rst As DAO.Recordset If MsgBox("L'élément [" & _ NewData & "] ne figure pas dans la liste. Voulez-vous l'ajouter ?", _ vbQuestion + vbYesNo) = vbYes Then Set rst = CurrentDb.OpenRecordset("Fournisseurs") rst.AddNew rst!Fournisseur = NewData rst.Update rst.Close Set rst = Nothing End If Response = acDataErrAdded End Sub
Philou
"JMH" a écrit dans le message de news: %
Re Ta ligne Me!FournisseurRecherché.Requery doit être Me.FournisseurRecherché.Requery et dans d'autre ligne tu as la même chose avec Me!. ... sinon tu mets un Msgbox "FournisseurRecherché"
J'ai corrigé tous mes Me! en Me. Mais ça ne change rien. Lorsque je crée un nouveau fournisseur, il s'inscrit dans la table Fournisseurs dès que je valide le MsgBox. J'ai intégré à ma routine la ligne : MaBoîte = MsgBox([NewData], vbOKOnly, [Fournisseur]) Le résultat est correct pour [NewData], mais [Fournisseur] renvoit le nom du fournisseur affiché lorsque je tente d'en créer un. L'appui sur le bouton OK passe au fournisseur F+1 Par ailleurs, j'ai dans Private Sub Form_Current() les lignes : nbre = Me.FournisseurRecherché.ListCount If nbre > 30 Then nbre = 20 Me.FournisseurRecherché.ListRows = nbre ce qui me permet d'avoir un maximum raisonnable de nom dans la liste. Cette liste s'incrémente bien lorsque j'ajoute un nouveau fournisseur, c'est-à-dire que j'ai bien mon nouveau nom à sa place (tri alpha) en plus des autres noms. Mais le compteur d'enregistrement en bas de mon formulaire reste impassible. Et l'appel du nouveau nom reste inopérant. J'ai noté également que, si je clique sur le bouton >* du compteur, je passe bien sur mon nouveau fournisseur. Mais dès que j'en change, le compteur revient à sa position initiale. D'ailleurs, si j'entre une donnée dans un des sous-formulaires en regard du nouveau fournisseur, cette donnée s'inscrit dans la table ad-hoc, mais sans référence au dit fournisseur. :-(
Est-ce que ça peut t'aider ... à m'aider ?
"JMH" <abc@def.gh> a écrit dans le message de news:
%23uLNaGknFHA.2860@TK2MSFTNGP15.phx.gbl...
Re
Ta ligne Me!FournisseurRecherché.Requery doit être
Me.FournisseurRecherché.Requery et dans d'autre ligne tu as la même chose
avec Me!.
... sinon tu mets un Msgbox "FournisseurRecherché"
J'ai corrigé tous mes Me! en Me.
Mais ça ne change rien.
Lorsque je crée un nouveau fournisseur, il s'inscrit dans la table
Fournisseurs dès que je valide le MsgBox.
J'ai intégré à ma routine la ligne :
MaBoîte = MsgBox([NewData], vbOKOnly, [Fournisseur])
Le résultat est correct pour [NewData], mais [Fournisseur] renvoit le nom du
fournisseur affiché lorsque je tente d'en créer un. L'appui sur le bouton OK
passe au fournisseur F+1
Par ailleurs, j'ai dans Private Sub Form_Current()
les lignes :
nbre = Me.FournisseurRecherché.ListCount
If nbre > 30 Then nbre = 20
Me.FournisseurRecherché.ListRows = nbre
ce qui me permet d'avoir un maximum raisonnable de nom dans la liste.
Cette liste s'incrémente bien lorsque j'ajoute un nouveau fournisseur,
c'est-à-dire que j'ai bien mon nouveau nom à sa place (tri alpha) en plus
des autres noms.
Mais le compteur d'enregistrement en bas de mon formulaire reste impassible.
Et l'appel du nouveau nom reste inopérant.
J'ai noté également que, si je clique sur le bouton >* du compteur, je passe
bien sur mon nouveau fournisseur.
Mais dès que j'en change, le compteur revient à sa position initiale.
D'ailleurs, si j'entre une donnée dans un des sous-formulaires en regard du
nouveau fournisseur, cette donnée s'inscrit dans la table ad-hoc, mais sans
référence au dit fournisseur. :-(
Re Ta ligne Me!FournisseurRecherché.Requery doit être Me.FournisseurRecherché.Requery et dans d'autre ligne tu as la même chose avec Me!. ... sinon tu mets un Msgbox "FournisseurRecherché"
J'ai corrigé tous mes Me! en Me. Mais ça ne change rien. Lorsque je crée un nouveau fournisseur, il s'inscrit dans la table Fournisseurs dès que je valide le MsgBox. J'ai intégré à ma routine la ligne : MaBoîte = MsgBox([NewData], vbOKOnly, [Fournisseur]) Le résultat est correct pour [NewData], mais [Fournisseur] renvoit le nom du fournisseur affiché lorsque je tente d'en créer un. L'appui sur le bouton OK passe au fournisseur F+1 Par ailleurs, j'ai dans Private Sub Form_Current() les lignes : nbre = Me.FournisseurRecherché.ListCount If nbre > 30 Then nbre = 20 Me.FournisseurRecherché.ListRows = nbre ce qui me permet d'avoir un maximum raisonnable de nom dans la liste. Cette liste s'incrémente bien lorsque j'ajoute un nouveau fournisseur, c'est-à-dire que j'ai bien mon nouveau nom à sa place (tri alpha) en plus des autres noms. Mais le compteur d'enregistrement en bas de mon formulaire reste impassible. Et l'appel du nouveau nom reste inopérant. J'ai noté également que, si je clique sur le bouton >* du compteur, je passe bien sur mon nouveau fournisseur. Mais dès que j'en change, le compteur revient à sa position initiale. D'ailleurs, si j'entre une donnée dans un des sous-formulaires en regard du nouveau fournisseur, cette donnée s'inscrit dans la table ad-hoc, mais sans référence au dit fournisseur. :-(
Est-ce que ça peut t'aider ... à m'aider ?
JMH
Lis ta bal
"Philou" a écrit dans le message de news:
"JMH" a écrit dans le message de news: %
Re Ta ligne Me!FournisseurRecherché.Requery doit être Me.FournisseurRecherché.Requery et dans d'autre ligne tu as la même chose avec Me!. ... sinon tu mets un Msgbox "FournisseurRecherché"
J'ai corrigé tous mes Me! en Me. Mais ça ne change rien. Lorsque je crée un nouveau fournisseur, il s'inscrit dans la table Fournisseurs dès que je valide le MsgBox. J'ai intégré à ma routine la ligne : MaBoîte = MsgBox([NewData], vbOKOnly, [Fournisseur]) Le résultat est correct pour [NewData], mais [Fournisseur] renvoit le nom du fournisseur affiché lorsque je tente d'en créer un. L'appui sur le bouton OK passe au fournisseur F+1 Par ailleurs, j'ai dans Private Sub Form_Current() les lignes : nbre = Me.FournisseurRecherché.ListCount If nbre > 30 Then nbre = 20 Me.FournisseurRecherché.ListRows = nbre ce qui me permet d'avoir un maximum raisonnable de nom dans la liste. Cette liste s'incrémente bien lorsque j'ajoute un nouveau fournisseur, c'est-à-dire que j'ai bien mon nouveau nom à sa place (tri alpha) en plus des autres noms. Mais le compteur d'enregistrement en bas de mon formulaire reste impassible. Et l'appel du nouveau nom reste inopérant. J'ai noté également que, si je clique sur le bouton >* du compteur, je passe bien sur mon nouveau fournisseur. Mais dès que j'en change, le compteur revient à sa position initiale. D'ailleurs, si j'entre une donnée dans un des sous-formulaires en regard du nouveau fournisseur, cette donnée s'inscrit dans la table ad-hoc, mais sans référence au dit fournisseur. :-(
Est-ce que ça peut t'aider ... à m'aider ?
Lis ta bal
"Philou" <philou.tery@free.fr> a écrit dans le message de news:
ubQLlqknFHA.3552@TK2MSFTNGP10.phx.gbl...
"JMH" <abc@def.gh> a écrit dans le message de news:
%23uLNaGknFHA.2860@TK2MSFTNGP15.phx.gbl...
Re
Ta ligne Me!FournisseurRecherché.Requery doit être
Me.FournisseurRecherché.Requery et dans d'autre ligne tu as la même chose
avec Me!.
... sinon tu mets un Msgbox "FournisseurRecherché"
J'ai corrigé tous mes Me! en Me.
Mais ça ne change rien.
Lorsque je crée un nouveau fournisseur, il s'inscrit dans la table
Fournisseurs dès que je valide le MsgBox.
J'ai intégré à ma routine la ligne :
MaBoîte = MsgBox([NewData], vbOKOnly, [Fournisseur])
Le résultat est correct pour [NewData], mais [Fournisseur] renvoit le nom
du fournisseur affiché lorsque je tente d'en créer un. L'appui sur le
bouton OK passe au fournisseur F+1
Par ailleurs, j'ai dans Private Sub Form_Current()
les lignes :
nbre = Me.FournisseurRecherché.ListCount
If nbre > 30 Then nbre = 20
Me.FournisseurRecherché.ListRows = nbre
ce qui me permet d'avoir un maximum raisonnable de nom dans la liste.
Cette liste s'incrémente bien lorsque j'ajoute un nouveau fournisseur,
c'est-à-dire que j'ai bien mon nouveau nom à sa place (tri alpha) en plus
des autres noms.
Mais le compteur d'enregistrement en bas de mon formulaire reste
impassible.
Et l'appel du nouveau nom reste inopérant.
J'ai noté également que, si je clique sur le bouton >* du compteur, je
passe bien sur mon nouveau fournisseur.
Mais dès que j'en change, le compteur revient à sa position initiale.
D'ailleurs, si j'entre une donnée dans un des sous-formulaires en regard
du nouveau fournisseur, cette donnée s'inscrit dans la table ad-hoc, mais
sans référence au dit fournisseur. :-(
Re Ta ligne Me!FournisseurRecherché.Requery doit être Me.FournisseurRecherché.Requery et dans d'autre ligne tu as la même chose avec Me!. ... sinon tu mets un Msgbox "FournisseurRecherché"
J'ai corrigé tous mes Me! en Me. Mais ça ne change rien. Lorsque je crée un nouveau fournisseur, il s'inscrit dans la table Fournisseurs dès que je valide le MsgBox. J'ai intégré à ma routine la ligne : MaBoîte = MsgBox([NewData], vbOKOnly, [Fournisseur]) Le résultat est correct pour [NewData], mais [Fournisseur] renvoit le nom du fournisseur affiché lorsque je tente d'en créer un. L'appui sur le bouton OK passe au fournisseur F+1 Par ailleurs, j'ai dans Private Sub Form_Current() les lignes : nbre = Me.FournisseurRecherché.ListCount If nbre > 30 Then nbre = 20 Me.FournisseurRecherché.ListRows = nbre ce qui me permet d'avoir un maximum raisonnable de nom dans la liste. Cette liste s'incrémente bien lorsque j'ajoute un nouveau fournisseur, c'est-à-dire que j'ai bien mon nouveau nom à sa place (tri alpha) en plus des autres noms. Mais le compteur d'enregistrement en bas de mon formulaire reste impassible. Et l'appel du nouveau nom reste inopérant. J'ai noté également que, si je clique sur le bouton >* du compteur, je passe bien sur mon nouveau fournisseur. Mais dès que j'en change, le compteur revient à sa position initiale. D'ailleurs, si j'entre une donnée dans un des sous-formulaires en regard du nouveau fournisseur, cette donnée s'inscrit dans la table ad-hoc, mais sans référence au dit fournisseur. :-(
Est-ce que ça peut t'aider ... à m'aider ?
Philou
Je suis désolé mais c'est une fausse bal :-( Comme la tienne d'ailleurs. Je te saurai gré de bien vouloir reposter ici : http://cerbermail.com/?BiqhDZubQI
Merci d'avance et désolé pour cette confusion. Je pensais que le jeu de mots était suffisant :-(
"JMH" a écrit dans le message de news: %
Lis ta bal
"Philou" a écrit dans le message de news:
Je suis désolé mais c'est une fausse bal :-( Enfin, j'espère qu'elle n'existe pas :-))) Comme la tienne d'ailleurs. Je te saurai gré de bien vouloir reposter ici : http://cerbermail.com/?BiqhDZubQI
Merci d'avance et désolé pour cette confusion. Je pensais que le jeu de mots était suffisant :-(
Je suis désolé mais c'est une fausse bal :-(
Comme la tienne d'ailleurs.
Je te saurai gré de bien vouloir reposter ici :
http://cerbermail.com/?BiqhDZubQI
Merci d'avance et désolé pour cette confusion.
Je pensais que le jeu de mots était suffisant :-(
"JMH" <abc@def.gh> a écrit dans le message de news:
%23JbNYDlnFHA.1412@TK2MSFTNGP09.phx.gbl...
Lis ta bal
"Philou" <philou.tery@free.fr> a écrit dans le message de news:
Je suis désolé mais c'est une fausse bal :-( Enfin, j'espère qu'elle
n'existe pas :-)))
Comme la tienne d'ailleurs.
Je te saurai gré de bien vouloir reposter ici :
http://cerbermail.com/?BiqhDZubQI
Merci d'avance et désolé pour cette confusion.
Je pensais que le jeu de mots était suffisant :-(
Je suis désolé mais c'est une fausse bal :-( Comme la tienne d'ailleurs. Je te saurai gré de bien vouloir reposter ici : http://cerbermail.com/?BiqhDZubQI
Merci d'avance et désolé pour cette confusion. Je pensais que le jeu de mots était suffisant :-(
"JMH" a écrit dans le message de news: %
Lis ta bal
"Philou" a écrit dans le message de news:
Je suis désolé mais c'est une fausse bal :-( Enfin, j'espère qu'elle n'existe pas :-))) Comme la tienne d'ailleurs. Je te saurai gré de bien vouloir reposter ici : http://cerbermail.com/?BiqhDZubQI
Merci d'avance et désolé pour cette confusion. Je pensais que le jeu de mots était suffisant :-(