Bonjour à tous,
Je suis débutant en VBA et je souhaiterais avoir vos lumières sur mon problème :
J'ai sous Access 2003 enregistré une requête paramétrée, que je souhaiterais éxécuter en fonction d'une valeur sélectionnée dans un champ.
Je me suis un peu documenté, (notamment sur les tutos et forums de developpez.com) et ai opté pour passer comme paramètre à la requête une variable sous VBA, variable déclarée bien entendu dans le code lié à l'évènement doubleclic du champ concerné (en l'occurence, c'est une liste).
J'ai donc déclaré un objet DAO.QueryDef
La variable string censée contenir la valeur de mon paramètre
J'ai affecté la valeur du champ à la dite variable
J'ai chargé ma requête paramétrée dans l'objet QueryDef
J'ai affecté à l'attribut "parameters" de l'objet QueryDef la variable
Je lance la méthode d'éxécution de l'objet QueryDef
Voici le code correspondant à cette séquence :
Il est à noter que j'ai vérifié ma requête paramétrée en la lançant...elle s'éxécute sans problème, mais l'éxécution se bloque lorsque l'objet qdf lance sa méthode d'éxécution (le débugueur pointe sur cette ligne en erreur)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Private Sub Liste52_DblClick() Dim qdf As DAO.QueryDef Dim correspondant As String correspondant = Liste52.Value Set qdf = CurrentDb.QueryDefs("Applis_AD_Corresp") qdf.Parameters("NOM_CORRESP") = correspondant MsgBox (qdf.Parameters("NOM_CORRESP")) 'là, c'est une trace qdf.Execute End Sub
Un message d'erreur s'affiche : "impossible d'éxécuter une requête de sélection" (erreur 3065).
Auriez vous quelques détails à propos de cette erreurs ou auriez vous remarqué des erreur dans le copier collé que je vous ai fait (c'est pas faute d'avoir vérifié ^^) ?
Merci d'avance
Partager