Filter

cs_zaatout Messages postés 156 Date d'inscription dimanche 19 novembre 2006 Statut Membre Dernière intervention 20 novembre 2013 - 5 déc. 2012 à 10:01
cs_zaatout Messages postés 156 Date d'inscription dimanche 19 novembre 2006 Statut Membre Dernière intervention 20 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

merci A+

7 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
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.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
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.
0
cs_zaatout Messages postés 156 Date d'inscription dimanche 19 novembre 2006 Statut Membre Dernière intervention 20 novembre 2013
5 déc. 2012 à 10:24
slt

ce filter marche mais je voudrais taper le premier entier du champ matricule pour qu'il m'affiche la suite non pas saisir tous le champ
a+
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
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.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_zaatout Messages postés 156 Date d'inscription dimanche 19 novembre 2006 Statut Membre Dernière intervention 20 novembre 2013
5 déc. 2012 à 10:39
slt

le matricule il est en string

exemple j'ai matricule 100 et 200 .. 300 etc..
je tape le premier nombre 1 il m'affiche l'enregistrement 100 je veux ça ..

A+
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
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.
0
cs_zaatout Messages postés 156 Date d'inscription dimanche 19 novembre 2006 Statut Membre Dernière intervention 20 novembre 2013
5 déc. 2012 à 14:37
slt

ok Merci
0
Rejoignez-nous