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

Erreur execution 3061 Recordset

4 réponses
Avatar
TP
Bonjour,

j'ai un probl=E8me de parametres dans une macro.
J'ai un bug sur la ligne

Set Rst =3D Dbs.OpenRecordset("marequete")

Erreur execution 3061 , 2 =E9l=E9ments attendus


Je ne sais pas comment retranscrire les parametres en VBA.

En fait ces parametres sont saisis dans un formulaire, et=20
il s'agit de deux dates (problemes de format en vba):

marequete =E0 les criteres suivants :

>=3D[Forms]![Frm_Paiement]![DDT] Et <=3D[Forms]![Frm_Paiement]!
[DFT]

Elle fonctionne parfaitement quand je la lance toute seule!

Merci d'avance pour vos suggestion

4 réponses

Avatar
Raymond [mvp]
Bonsoir.

quelques idées sur : http://access.vba.free.fr/execution_standard.htm

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"TP" a écrit dans le message de
news:79d301c49514$455d3f40$
Bonjour,

j'ai un problème de parametres dans une macro.
J'ai un bug sur la ligne

Set Rst = Dbs.OpenRecordset("marequete")

Erreur execution 3061 , 2 éléments attendus


Je ne sais pas comment retranscrire les parametres en VBA.

En fait ces parametres sont saisis dans un formulaire, et
il s'agit de deux dates (problemes de format en vba):

marequete à les criteres suivants :

=[Forms]![Frm_Paiement]![DDT] Et <=[Forms]![Frm_Paiement]!
[DFT]


Elle fonctionne parfaitement quand je la lance toute seule!

Merci d'avance pour vos suggestion

Avatar
TP
Merci raymond j'ai bien regardé ta page mais je n'arrive
pas à comprendre comment intégrer mes parametres à
Qry.Parameters

J'ai bien essayé

Set Dbs = CurrentDb
Set Qry = CurrentDb.QueryDefs(strItem)
P = ">=[Forms]![Frm_Paiement]![DDT] Et <=[Forms]!
[Frm_Paiement]![DFT]"
Qry.Parameters("Acte_datedecision") = P
Set Rs = Qry.OpenRecordset

mais ça bug???

c'est surtout comment faire pour executer ma requete avec
ses parametres saisis dans mon formulaire:

champ :
décision
condition :
=[Forms]![Frm_Paiement]![DDT] Et <=[Forms]![Frm_Paiement]!
[DFT]


Merci

Avatar
TP
Pour bien poser le probleme
J'ai une requete : marequete
qui a des parametres de filtrage saisis dans un formulaire

champ
Decision
critere
=[Forms]![Frm_P]![DDT] Et <=[Forms]![Frm_P]![DFT]


En sql ça donne

SELECT table1.* FROM table1
WHERE (((Tbl_Act.Decision)>=[Forms]![Frm_P]![DDT] And
(Tbl_Act.Decision)<=[Forms]![Frm_P]![DFT]));

J'ai une macro qui doit lancer la requete : mamacro

sub mamacro()
...
Set Dbs = CurrentDb
Set Qry = CurrentDb.QueryDefs(strItem)

P = Forms("Frm_P")![DDT].Value
datedeb = "#" & Month(P) & "/" & Day(P) & "/" & Year(P)
& "#"
Q = Forms("Frm_P")![DFT].Value
Datefin = "#" & Month(Q) & "/" & Day(Q) & "/" & Year(Q)
& "#"

Qry.Parameters ("Decision") >= datedeb
Qry.Parameters ("Decision") <= Datefin

Set Rs = Qry.OpenRecordset

...
end sub

Comment faire pour affecter mes parametres à Qry.Parameters

merci d'avance pour toutes vos propositions

Avatar
TP
Ok j'ai trouvé!

P = Forms("Frm_Paiement")![DDT].Value
datedeb = Month(P) & "/" & Day(P) & "/" & Year(P)
Q = Forms("Frm_Paiement")![DFT].Value
datefin = Month(Q) & "/" & Day(Q) & "/" & Year(Q)

Qry.Parameters("[Forms]![Frm_Paiement]!DDT") = datedeb
Qry.Parameters("[Forms]![Frm_Paiement]!DFT") = datefin

Par contre apparemment je ne suis pas obliger de traiter
la date en us donc ça doit marcher avec
Qry.Parameters("[Forms]![Frm_Paiement]!DDT") = P
Qry.Parameters("[Forms]![Frm_Paiement]!DFT") = Q

Merci Raymond pour le tuyau