J’ai une table article et une table commande et je ne veux avoir aucune
liaison entre les 2 tables
La table article me sert simplement à alimenter ma table commande.
Dans ma table article :
Référence
Désignation
PA
Dans ma table commande
N°commande
Référence
Désignation
Prix
Dans mon formulaire commande (basé sur ma table commande)
Si je saisi la référence RA2005 (sur évenement après MAJ)je voudrais que
commande.désignation= article.désignation et commande.prix = article.PA pour
cette référence
J'ai regle ceci par:
dans mon formulaire commande j'ai mis une liste box sur la réference
ayant pour donnée article.reference puis sur evenement apres MAJ
Me!Larticles = Me!Carticles.Column(1)
Me!prix = Me!Carticles.Column(2)
Donc pour integrer les articles dans la commande c'est ok
De plus si je modifie le prix(sur évenement après MAJ) ou la désignation(sur
évenement après MAJ) pour cette référence dans la table commande je voudrais
que cela modifie automatiquement dans ma table article.
Dans mon formulaire commande base sur la table commandeF
le debut de mes trouvailles sont:
Private Sub Prix_AfterUpdate()
Dim varX As Variant
varX = DLookup("[PA]", "articlesF", "[referenceF] =Carticles ")
MsgBox varX
varX = prix
End Sub
Mais le probleme c'est que je n'arrive pas a remplacer le prix de la table
articleF
concernant cette reference alrs que j'arrive bien a trouve cet article.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gilles
suite à mes 2 posts du 23 et 24 qui sont: ... Dans mon formulaire commande base sur la table commandeF le debut de mes trouvailles sont: Private Sub Prix_AfterUpdate() Dim varX As Variant varX = DLookup("[PA]", "articlesF", "[referenceF] Êrticles ") MsgBox varX varX = prix End Sub
Mais le probleme c'est que je n'arrive pas a remplacer le prix de la table articleF concernant cette reference alrs que j'arrive bien a trouve cet article. Quelqu'un pourrait-il m'aider? Bonne soirée @+ Yannick
Bonjour, Yannick
Essaye ceci:
Private Sub Prix_AfterUpdate() Dim vrArticle As Recordset ' Chargement de l'article de référence Carticles dans le Recordset Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE [referenceF] =" & Carticles) With vrArticle ' Article trouvé if not .EOF Then ' Positionnement sur l'article .MoveFirst ' Début de modification du recordset .Edit ![PA]=prix ' Transfert de la modification du recordset vers la table .Update End If End With ' Déchargement du recordset Set vrArticle = Nothing End Sub
Bonne continuation
suite à mes 2 posts du 23 et 24 qui sont:
...
Dans mon formulaire commande base sur la table commandeF
le debut de mes trouvailles sont:
Private Sub Prix_AfterUpdate()
Dim varX As Variant
varX = DLookup("[PA]", "articlesF", "[referenceF] Êrticles ")
MsgBox varX
varX = prix
End Sub
Mais le probleme c'est que je n'arrive pas a remplacer le prix de la table
articleF
concernant cette reference alrs que j'arrive bien a trouve cet article.
Quelqu'un pourrait-il m'aider?
Bonne soirée
@+
Yannick
Bonjour, Yannick
Essaye ceci:
Private Sub Prix_AfterUpdate()
Dim vrArticle As Recordset
' Chargement de l'article de référence Carticles dans le Recordset
Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE
[referenceF] =" & Carticles)
With vrArticle
' Article trouvé
if not .EOF Then
' Positionnement sur l'article
.MoveFirst
' Début de modification du recordset
.Edit
![PA]=prix
' Transfert de la modification du recordset vers la table
.Update
End If
End With
' Déchargement du recordset
Set vrArticle = Nothing
End Sub
suite à mes 2 posts du 23 et 24 qui sont: ... Dans mon formulaire commande base sur la table commandeF le debut de mes trouvailles sont: Private Sub Prix_AfterUpdate() Dim varX As Variant varX = DLookup("[PA]", "articlesF", "[referenceF] Êrticles ") MsgBox varX varX = prix End Sub
Mais le probleme c'est que je n'arrive pas a remplacer le prix de la table articleF concernant cette reference alrs que j'arrive bien a trouve cet article. Quelqu'un pourrait-il m'aider? Bonne soirée @+ Yannick
Bonjour, Yannick
Essaye ceci:
Private Sub Prix_AfterUpdate() Dim vrArticle As Recordset ' Chargement de l'article de référence Carticles dans le Recordset Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE [referenceF] =" & Carticles) With vrArticle ' Article trouvé if not .EOF Then ' Positionnement sur l'article .MoveFirst ' Début de modification du recordset .Edit ![PA]=prix ' Transfert de la modification du recordset vers la table .Update End If End With ' Déchargement du recordset Set vrArticle = Nothing End Sub
Bonne continuation
yannick
Je te remercie Gilles, J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je compile, il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela fonctionne? J'attends vivement ta réponse pour que je puisse tester cela.
A Bientot et encore Merci
@+
Yannick
suite à mes 2 posts du 23 et 24 qui sont: ... Dans mon formulaire commande base sur la table commandeF le debut de mes trouvailles sont: Private Sub Prix_AfterUpdate() Dim varX As Variant varX = DLookup("[PA]", "articlesF", "[referenceF] Êrticles ") MsgBox varX varX = prix End Sub
Mais le probleme c'est que je n'arrive pas a remplacer le prix de la table articleF concernant cette reference alrs que j'arrive bien a trouve cet article. Quelqu'un pourrait-il m'aider? Bonne soirée @+ Yannick
Bonjour, Yannick
Essaye ceci:
Private Sub Prix_AfterUpdate() Dim vrArticle As Recordset ' Chargement de l'article de référence Carticles dans le Recordset Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE [referenceF] =" & Carticles) With vrArticle ' Article trouvé if not .EOF Then ' Positionnement sur l'article .MoveFirst ' Début de modification du recordset .Edit ![PA]=prix ' Transfert de la modification du recordset vers la table .Update End If End With ' Déchargement du recordset Set vrArticle = Nothing End Sub
Bonne continuation
Je te remercie Gilles,
J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je
compile,
il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela
fonctionne?
J'attends vivement ta réponse pour que je puisse tester cela.
A Bientot et encore Merci
@+
Yannick
suite à mes 2 posts du 23 et 24 qui sont:
...
Dans mon formulaire commande base sur la table commandeF
le debut de mes trouvailles sont:
Private Sub Prix_AfterUpdate()
Dim varX As Variant
varX = DLookup("[PA]", "articlesF", "[referenceF] Êrticles ")
MsgBox varX
varX = prix
End Sub
Mais le probleme c'est que je n'arrive pas a remplacer le prix de la table
articleF
concernant cette reference alrs que j'arrive bien a trouve cet article.
Quelqu'un pourrait-il m'aider?
Bonne soirée
@+
Yannick
Bonjour, Yannick
Essaye ceci:
Private Sub Prix_AfterUpdate()
Dim vrArticle As Recordset
' Chargement de l'article de référence Carticles dans le Recordset
Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE
[referenceF] =" & Carticles)
With vrArticle
' Article trouvé
if not .EOF Then
' Positionnement sur l'article
.MoveFirst
' Début de modification du recordset
.Edit
![PA]=prix
' Transfert de la modification du recordset vers la table
.Update
End If
End With
' Déchargement du recordset
Set vrArticle = Nothing
End Sub
Je te remercie Gilles, J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je compile, il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela fonctionne? J'attends vivement ta réponse pour que je puisse tester cela.
A Bientot et encore Merci
@+
Yannick
suite à mes 2 posts du 23 et 24 qui sont: ... Dans mon formulaire commande base sur la table commandeF le debut de mes trouvailles sont: Private Sub Prix_AfterUpdate() Dim varX As Variant varX = DLookup("[PA]", "articlesF", "[referenceF] Êrticles ") MsgBox varX varX = prix End Sub
Mais le probleme c'est que je n'arrive pas a remplacer le prix de la table articleF concernant cette reference alrs que j'arrive bien a trouve cet article. Quelqu'un pourrait-il m'aider? Bonne soirée @+ Yannick
Bonjour, Yannick
Essaye ceci:
Private Sub Prix_AfterUpdate() Dim vrArticle As Recordset ' Chargement de l'article de référence Carticles dans le Recordset Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE [referenceF] =" & Carticles) With vrArticle ' Article trouvé if not .EOF Then ' Positionnement sur l'article .MoveFirst ' Début de modification du recordset .Edit ![PA]=prix ' Transfert de la modification du recordset vers la table .Update End If End With ' Déchargement du recordset Set vrArticle = Nothing End Sub
Bonne continuation
Gilles
Je te remercie Gilles, J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je compile, il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela fonctionne? J'attends vivement ta réponse pour que je puisse tester cela. A Bientot et encore Merci @+ Yannick
Bonjour, Yannick
1) Cocher "Microsoft DAO 3.6 Object Library" dans le menu Outils/Références... 2) Modifier la déclaration de vrArticle: "Dim vrArticle As DAO.Recordset"
Désolé, j'ai tellement l'habitude d'utiliser DAO que j'oublie que, par défaut, c'est ADO qui est coché. Mais la même chose existe sans doute en ADO. Ne connaissant pas, vois avec les "vrais" spécialistes, Raymond, Pierre CFI et 3Stone ou utilises l'aide.
Bonne continuation
Je te remercie Gilles,
J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je
compile,
il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela
fonctionne?
J'attends vivement ta réponse pour que je puisse tester cela.
A Bientot et encore Merci
@+
Yannick
Bonjour, Yannick
1) Cocher "Microsoft DAO 3.6 Object Library" dans le menu
Outils/Références...
2) Modifier la déclaration de vrArticle: "Dim vrArticle As DAO.Recordset"
Désolé, j'ai tellement l'habitude d'utiliser DAO que j'oublie que, par
défaut, c'est ADO qui est coché.
Mais la même chose existe sans doute en ADO. Ne connaissant pas, vois avec
les "vrais" spécialistes, Raymond, Pierre CFI et 3Stone ou utilises l'aide.
Je te remercie Gilles, J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je compile, il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela fonctionne? J'attends vivement ta réponse pour que je puisse tester cela. A Bientot et encore Merci @+ Yannick
Bonjour, Yannick
1) Cocher "Microsoft DAO 3.6 Object Library" dans le menu Outils/Références... 2) Modifier la déclaration de vrArticle: "Dim vrArticle As DAO.Recordset"
Désolé, j'ai tellement l'habitude d'utiliser DAO que j'oublie que, par défaut, c'est ADO qui est coché. Mais la même chose existe sans doute en ADO. Ne connaissant pas, vois avec les "vrais" spécialistes, Raymond, Pierre CFI et 3Stone ou utilises l'aide.
Bonne continuation
3stone
Salut,
"yannick" | J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je | compile, | il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela | fonctionne?
ADO ne connait plus "Edit"...
écrit : Dim vrArticle As DAO.Recordset
et coche la référence DAO pour l'exemple de Gilles
"yannick"
| J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je
| compile,
| il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela
| fonctionne?
ADO ne connait plus "Edit"...
écrit : Dim vrArticle As DAO.Recordset
et coche la référence DAO pour l'exemple de Gilles
"yannick" | J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je | compile, | il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela | fonctionne?
ADO ne connait plus "Edit"...
écrit : Dim vrArticle As DAO.Recordset
et coche la référence DAO pour l'exemple de Gilles
Merci à tous les deux, Raymond m'a règler le probleme en faisant une jointure entre les 2 tables; C'est donc solutionner mais j'aurais voulu avoir une explication c'est qu' à la ligne Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE [referenceF] =" & Carticles) j'ai une erreur 3061 alors que le code de Gilles a l'air d' etre bon et j'aimerais bien tester ce code.
Donc pouvez vous m'aider si vous avez un peu de temps à me consacrer pour que par la suite cela me donne des idées.
Merci Gilles, Pierre et Raymond
@+
Yannick
Salut,
"yannick" | J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je | compile, | il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela | fonctionne?
ADO ne connait plus "Edit"...
écrit : Dim vrArticle As DAO.Recordset
et coche la référence DAO pour l'exemple de Gilles
Merci à tous les deux,
Raymond m'a règler le probleme en faisant une jointure entre les 2 tables;
C'est donc solutionner mais j'aurais voulu avoir une explication c'est qu' à
la ligne
Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE
[referenceF] =" & Carticles)
j'ai une erreur 3061 alors que le code de Gilles a l'air d' etre bon et
j'aimerais bien tester ce code.
Donc pouvez vous m'aider si vous avez un peu de temps à me consacrer pour
que par la suite cela me donne des idées.
Merci Gilles, Pierre et Raymond
@+
Yannick
Salut,
"yannick"
| J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je
| compile,
| il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela
| fonctionne?
ADO ne connait plus "Edit"...
écrit : Dim vrArticle As DAO.Recordset
et coche la référence DAO pour l'exemple de Gilles
Merci à tous les deux, Raymond m'a règler le probleme en faisant une jointure entre les 2 tables; C'est donc solutionner mais j'aurais voulu avoir une explication c'est qu' à la ligne Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE [referenceF] =" & Carticles) j'ai une erreur 3061 alors que le code de Gilles a l'air d' etre bon et j'aimerais bien tester ce code.
Donc pouvez vous m'aider si vous avez un peu de temps à me consacrer pour que par la suite cela me donne des idées.
Merci Gilles, Pierre et Raymond
@+
Yannick
Salut,
"yannick" | J'ai un souci c'est que je ne peux pas tester ta procédure car lorsque je | compile, | il se bloque sur .Edit. Quelle réference dois-je mettre pour que cela | fonctionne?
ADO ne connait plus "Edit"...
écrit : Dim vrArticle As DAO.Recordset
et coche la référence DAO pour l'exemple de Gilles
Merci à tous les deux, Raymond m'a règler le probleme en faisant une jointure entre les 2 tables; C'est donc solutionner mais j'aurais voulu avoir une explication c'est qu' à
la ligne Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE [referenceF] =" & Carticles) j'ai une erreur 3061 alors que le code de Gilles a l'air d' etre bon et j'aimerais bien tester ce code. Donc pouvez vous m'aider si vous avez un peu de temps à me consacrer pour que par la suite cela me donne des idées. Merci Gilles, Pierre et Raymond @+ Yannick
Bonjour, Yannick
En recherchant dans les archives (hé ben non, je ne connais pas tous les numéros d'erreurs par coeur ! ;-), il semblerait qu'il manque des éléments pour que la requête s'exécute. Donc, questions: 1) Est-il possible que Carticles soit vide ? Dans ce cas, remplace Carticles par Nz(Carticles, "UneValeurQuiRendraUneRequeteVide") 2) articlesF est-il une requête paramétrée ? Pour connaître l'élément manquant, crée une requête en mode SQL dans laquelle tu recopies "SELECT [PA] FROM articlesF WHERE > [referenceF] =0" en enlevant les guillemets et essaye de l'afficher.
Bonne continuation
Merci à tous les deux,
Raymond m'a règler le probleme en faisant une jointure entre les 2 tables;
C'est donc solutionner mais j'aurais voulu avoir une explication c'est qu'
à
la ligne
Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE
[referenceF] =" & Carticles)
j'ai une erreur 3061 alors que le code de Gilles a l'air d' etre bon et
j'aimerais bien tester ce code.
Donc pouvez vous m'aider si vous avez un peu de temps à me consacrer pour
que par la suite cela me donne des idées.
Merci Gilles, Pierre et Raymond
@+
Yannick
Bonjour, Yannick
En recherchant dans les archives (hé ben non, je ne connais pas tous les
numéros d'erreurs par coeur ! ;-), il semblerait qu'il manque des éléments
pour que la requête s'exécute. Donc, questions:
1) Est-il possible que Carticles soit vide ?
Dans ce cas, remplace Carticles par Nz(Carticles,
"UneValeurQuiRendraUneRequeteVide")
2) articlesF est-il une requête paramétrée ?
Pour connaître l'élément manquant, crée une requête en mode SQL dans
laquelle tu recopies "SELECT [PA] FROM articlesF WHERE > [referenceF] =0" en
enlevant les guillemets et essaye de l'afficher.
Merci à tous les deux, Raymond m'a règler le probleme en faisant une jointure entre les 2 tables; C'est donc solutionner mais j'aurais voulu avoir une explication c'est qu' à
la ligne Set vrArticle=CurrentDb.Openrecordset("SELECT [PA] FROM articlesF WHERE [referenceF] =" & Carticles) j'ai une erreur 3061 alors que le code de Gilles a l'air d' etre bon et j'aimerais bien tester ce code. Donc pouvez vous m'aider si vous avez un peu de temps à me consacrer pour que par la suite cela me donne des idées. Merci Gilles, Pierre et Raymond @+ Yannick
Bonjour, Yannick
En recherchant dans les archives (hé ben non, je ne connais pas tous les numéros d'erreurs par coeur ! ;-), il semblerait qu'il manque des éléments pour que la requête s'exécute. Donc, questions: 1) Est-il possible que Carticles soit vide ? Dans ce cas, remplace Carticles par Nz(Carticles, "UneValeurQuiRendraUneRequeteVide") 2) articlesF est-il une requête paramétrée ? Pour connaître l'élément manquant, crée une requête en mode SQL dans laquelle tu recopies "SELECT [PA] FROM articlesF WHERE > [referenceF] =0" en enlevant les guillemets et essaye de l'afficher.