Problème Access récupération value d'une TextBox dans une Requête

Problème Access récupération value d'une TextBox dans une Requête - VB/VBA/VBS - Programmation

Marsh Posté le 17-08-2004 à 12:03:55    

Bonjour,
 
J'ai rencontré un problème sous access ou j'élabore un petit programme.
En partant d'un formulaire, j'ai créée une Zone de Text qui récupère les clés primaires d'une liste d'articles sous forme : "12 Ou 18 Ou 21" afin de récupérer cette valeur sous une requête comme filtre en passant par l'appelle d'une Macro.
Le problème est que cela fonctionne bien si il y a une seule Clé (ex: "12" ) mais si il y en a plusieur (ex: "12 Ou 22" ) cela ne fonctionne pas. Je pense que c'est peut-être à cause des " mais j'en suis pas sure.
 
Si quelqu'un peut me sortir de ce problème par une modif ou même une autre solution je suis preneur.
 
Merci d'avance.


---------------
Loïc.
Reply

Marsh Posté le 17-08-2004 à 12:03:55   

Reply

Marsh Posté le 17-08-2004 à 16:51:07    

Vire les "" ? Je vois pas en quoi ils sont indispensables ?

Reply

Marsh Posté le 18-08-2004 à 08:42:37    

Oui mais comment les enlever !!!
Y a-t-il une fonction ou autre ?
Et pourquoi ça marcherais si il y a une seule clé et non si il y en a plusieurs?


---------------
Loïc.
Reply

Marsh Posté le 18-08-2004 à 10:46:20    

Je pense que cela vient de ton code...
 
Si tu met une valeur, exemple 12, la requete devient alors:
 
Select ... From ... Where age=12
 
Cela fonctionne, alors que si tu met 12 OU 40
 
Select ... From ... Where age=12 OU 40
 
Or la formule correcte serait (Si mes souvenirs sont bon)
 
Select ... From ... Where age=12 or age=40
 
Peut etre avec un "12 or 40"? :??:


Message édité par guzman le 18-08-2004 à 10:48:36
Reply

Marsh Posté le 18-08-2004 à 16:03:46    

Oui mais le problème c'est que je modifie pas le code SQL d'une requête mais je récupaire la valeur de mon Textbox directement dans l'interface d'une requête sous Access en mettant [forms]![nom_formulaire]![nom_Textbox] dans la cellue en face du "Critères:" dans la modification de la requête.


---------------
Loïc.
Reply

Marsh Posté le 18-08-2004 à 16:15:35    

Je pense que guzman a raison : la text box peut marcher pour un filtre mais pas pour une requete.

Reply

Marsh Posté le 18-08-2004 à 16:36:53    

Ouais mais ce qui est étrange, c'est que si ma textbox = "11 Ou Releves.cle = 12" ca marche pas, mais si je copie "11 Ou Releves.cle = 12" dans le Critère de la requête ca marche !!!
Et si il y a une seule cle "11" ca marche dans les 2 cas.
C'est fou !!!!!


---------------
Loïc.
Reply

Marsh Posté le 18-08-2004 à 18:10:59    

Ce que tu peux faire, c'est afficher le code sql généré par access. C'est possible qu'Access génère une sorte de parenthèse autour de ta textbox (je sais c'est pas clair).

Reply

Marsh Posté le 19-08-2004 à 09:13:04    

Ouais mais comment t'affiche le code SQL de la requête avec le paramètre à l'intérieur ?
car si tu la modifie quand elle est ouverte avec le paramètre tu ne vois rien!


---------------
Loïc.
Reply

Marsh Posté le 19-08-2004 à 09:25:24    

tu prends ta requete avec ton parametre et tu affiches le SQL (ça sera qq chose genre mon_champ = [form].[textbox]).
Ensuite tu copie colle le contenu de ton parametre dans ta requete (tu remplaces [form].[textbox] par "12 ou ... " et tu réaffiche le SQL.
 
C'est juste par curiosité (et aussi car je n'ai plus access au bureau).
 
Sinon, il te reste la possibilité de faire une requete "dynamique", c'est à dire que tu adaptes le code de ta requete en fonction du paramètre.

Reply

Marsh Posté le 19-08-2004 à 09:25:24   

Reply

Marsh Posté le 19-08-2004 à 09:26:17    

Sinon pour le fait de changer et de ne pas mettre une textbox mais autre chose, je vois pas quoi essayer.
Ca serait pas possible de récupérer le paramètre dans une variable et de l'appeller dans la requête. par contre je vois pas comment appeller une variable dans une requête ?


---------------
Loïc.
Reply

Marsh Posté le 19-08-2004 à 09:29:03    

Non, c'est pas possible (du moins à ma connaissance).

Reply

Marsh Posté le 19-08-2004 à 09:44:29    

Quel merde !
Je t'explique, en fait j'ai un formulaire ou j'ai une listbox principale avec une liste de produits. Autour, j'ai d'autre listbox permettant de filtrer la liste des produits.
Je voudrais donc récupérer la liste des clés de la listbox principale afin de créer à partir de cela un état.


---------------
Loïc.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed