Opérateur dans requête
Le
Doudou
Bonjour,
Voilà je fais une requête avec des critères :
Première zones donne l'opérateur soir "=";"<";">";
Deuxième zones donne la valeur (ex : 8)
Je désire faire une requête sans qui à comme critère l'opérateur " " la valeur
Mais voila quand je met ma formule il ne recherche pas tous les valeur
inférieur à 8 mais il recherche <8 dans le champ
Quelle syntaxe prendre pour qu'il comprenne que
forms![frm_recherche]![opérateur] n'est pas une valeur mais un opérateur .
Merci d'vance
Voilà je fais une requête avec des critères :
Première zones donne l'opérateur soir "=";"<";">";
Deuxième zones donne la valeur (ex : 8)
Je désire faire une requête sans qui à comme critère l'opérateur " " la valeur
Mais voila quand je met ma formule il ne recherche pas tous les valeur
inférieur à 8 mais il recherche <8 dans le champ
Quelle syntaxe prendre pour qu'il comprenne que
forms![frm_recherche]![opérateur] n'est pas une valeur mais un opérateur .
Merci d'vance

Poser une question


Non testé
mais peut-être avec :
Eval("Formulaires![frm_recherche]![opérateur]" & " " &
"Formulaires![frm_recherche]![valeur]") en critère ?
Si c'est en SQL remplacer Formulaires par Forms
--
A+
Eric
http://users.skynet.be/mpfa/
Archives : http://groups.google.fr/group/micro...cess?hl=fr
Ne tiens pas compte de ma réponse précédente, ca ne doit pas marcher.
Par contre la procédure suivante OUI.
Un formulaire nommé Formulaire1 avec 2 zones de textes (txtOperateur et
txtValeur) et un bouton de commande Commande4.
Il faut créer la chaine SQL avec la fonction Eval() pour récupérer les
éléments saisis dans les zones de texte. Puis, on crée la requête, on
l'ouvre et enfin, on la supprime de la collection des requêtes pour une
utilisation ultérieure de la procédure.
Cet exemple permet de ne voir que les factures dont le n° est =, <, <=,
Ce qui donne:
Private Sub Commande4_Click()
Dim ret As String, qry As DAO.QueryDef, strSQL As String
'Récupération des éléments saisis dans les zones de texte
ret = Eval("Forms!formulaire1![txtOperateur] &
Forms!formulaire1![txtvaleur]")
' Construction du SQL
strSQL = "Select * from tfacture where NumFacture " & ret & ";"
' Création de la requête temporaire
Set qry = CurrentDb.CreateQueryDef("tmpQRY", strSQL)
' Ouverture de la requête
DoCmd.OpenQuery "tmpQRY"
'Suppression de la requête
CurrentDb.QueryDefs.Delete "tmpQRY"
'Libération des variables-objet
Set qry = Nothing
End Sub
Attention à la ligne ret=..., tout est sur la même ligne, pas de retour
à la ligne pour Forms!formulaire1![txtvaleur]")
PS : Charger la Référence Microsoft DAO 3.x
--
A+
Eric
http://users.skynet.be/mpfa/
Archives : http://groups.google.fr/group/micro...cess?hl=fr