cs_zaatout
Messages postés156Date d'inscriptiondimanche 19 novembre 2006StatutMembreDernière intervention20 novembre 2013
-
5 déc. 2012 à 10:01
cs_zaatout
Messages postés156Date d'inscriptiondimanche 19 novembre 2006StatutMembreDernière intervention20 novembre 2013
-
5 déc. 2012 à 14:37
bonjour
je voudrai faire un filtre sur un champ numérique pour qu'il m'affiche les données en tapant le premier chiffre mais impossible dans faire un sur un champ numérique !! Voici la syntaxe de mon .Filter :
Private Sub Text3_Change()
If Text3 = "" Then
GoTo etq
End If
Adodc1.Recordset.Filter = "matricule LIKE '" & (Text3.Text) & "'"
etq:
End Sub
ce filter je dois taper tous le matricule pour qu'il m'afficher l'enregistrement
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 5 déc. 2012 à 10:18
Bonjour,
L'opérateur Like ne saurait être utilisé pour comparer autre chose que des variables de type String. Cela va de soi.
Quelle comparaison veux-tu faire ?
Si pour filtrer des nombres compris entre deux valeurs, ce n'est pas Like qu'il faut utiliser, mais des comparateurs normaux (<, >, <=, >=, <>)
Si pour filtrer sur une ou des partie(s) de la chaîne de ce numérique, c'est que le champ concerné ne contient pas de vrais "nombres" mais du texte alphanumérique (aucune raison n'existe de filtrer un numérique pur par une partie de la chaîne de caractères qui représenterait ce numérique) !
C'est alors le type même du champ concerné, qu'il te faut reconsidérer.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 5 déc. 2012 à 10:24
De sucroît : l'expression
"matricule LIKE '" & (Text3.Text) & "'"
serait dans tous les cas de figure une utilisation abusive de l'opérateur Like (même pour un champ de type string), sauf si l'on laisse le soin à un utilisateur de mettre des caractères génériques dans la texbox !
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 5 déc. 2012 à 10:31
champ matricule
faire un sur un champ numérique
On est bel et bien là dans ce que j'exprimais plus haut !
Un matricule n'est pas un nombre, mais une chaîne de caractères Ce champ devrait donc être typé en String !
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
Vous n’avez pas trouvé la réponse que vous recherchez ?
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 5 déc. 2012 à 10:44
1) observe la contradiction entre ton premier message
mais impossible dans faire un sur un champ numérique !!
et ce que tu dis maintenant :
le matricule il est en string
Il n'est pas sérieux d'être si peu précis dans ce que tu exposes...
2) l'utilisation de l'opérateur Like n'est justifiée qu'avec l'emploi de caractères génériques
Il se trouve que dans une autre discussion, j'ai eu l'occasion de te parler de cet opérateur et ... t'ai même donné l'expression du filtre (utilisant *) que tu dis chercher maintenant !
Alors ?
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.