Macro access

kipetro Messages postés 22 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 10 août 2012 - 7 août 2012 à 12:11
kipetro Messages postés 22 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 10 août 2012 - 10 août 2012 à 15:54
Bonjour à tous,

est-ce que quelqu'un vois un problème dans ce bout de code d'une macro access ?

Option Compare Database

'------------------------------------------------------------
' Macro_update_stockage1
'
'------------------------------------------------------------
Function Macro_update_stockage1()
On Error GoTo Macro_update_stockage1_Err

If ("[ajout_stock]![quantité stocké]" = "[ajout_stock]![quantité]") Then
DoCmd.OpenQuery "Requête_update_jaout_stock2", acViewNormal, acEdit
ElseIf ("[ajout_stock]![quantité stocké]" > "[ajout_stock]![quantité]") Then
DoCmd.OpenQuery "Requête_update_jaout_stock", acViewNormal, acEdit
End If
DoCmd.OpenQuery "qt_eqvl_qtstocké", acViewNormal, acEdit


Macro_update_stockage1_Exit:
Exit Function

Macro_update_stockage1_Err:
MsgBox Error$
Resume Macro_update_stockage1_Exit

End Function

2 réponses

kipetro Messages postés 22 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 10 août 2012
7 août 2012 à 16:28
dur dur, ma façon de faire n'est peut-être pas celle qu'il faudrait, donc je réfléchis à une autre manière de faire.

en gros ma table ajout_stock incrémente une référence d'ajout de stock, j'ai donc une ligne par ajout composant la date de l'ajout, la quantité, la réf, le n° de produit etc..

je veux simplement utiliser le dernière enregistrement de la table ajout_stock pour additionner la quantité avec la quantité disponible dans la table inventaire.

code récupérer sur ce site pour avoir le dernier enregistrement:

Function drnierenreg()
txtreq = "select max(id) AS maxi from table"
set res=conn.execute(txtreq)
do until (res.EOF)
dernierenrg = res("maxi")
exit function
loop
dernierenrg= -1
end function

j'ai déjà un soucis avec ce bout de code erreur 424 objet requis mais pour cela je suis certain qu'il y a un solution logique.

mais comment je peux utiliser ce bout de code pour utiliser le dernier enregistrement de la table ajout_stock ??

j'ai un peux de mal à avoir une logique pour faire cela.

est-ce que quelqu'un serais m'aider ?


kipetro débutant.
0
kipetro Messages postés 22 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 10 août 2012
10 août 2012 à 15:54
bjrs à tous,
Mon sujet n'a pas l'air de passionner beaucoup de monde.

Function drnierenreg()
txtreq = "select max(id) AS maxi from table"
set res=conn.execute(txtreq)
do until (res.EOF)
dernierenrg = res("maxi")
exit function
loop
dernierenrg= -1
end function


mon erreur vient de la ligne colorié, la requête sql select max(id) AS maxi from table fonctionne quand je la test dans le créateur de requête access mais plus quand je fais ce genre de requête

SELECT ajout_stock.ref_ajout, ajout_stock.ref_produit, ajout_stock.prix_achat, ajout_stock.quantité
FROM ajout_stock
GROUP BY ajout_stock.ref_ajout, ajout_stock.ref_produit, ajout_stock.prix_achat, ajout_stock.quantité
HAVING (ajout_stock.ref_ajout)=dernierenreg();

il me sort une erreur 424 objet requis et je me demande si cela vient de la méthode de connexion à la base ou du code.

merci d'avance pour l'aide que vous pourrez m'apporter

kipetro debutant.mais pas pour longtemps
0
Rejoignez-nous