Excel pb filtre numérique+alpha

Résolu/Fermé
lulu37
Messages postés
76
Date d'inscription
jeudi 24 août 2006
Statut
Membre
Dernière intervention
8 avril 2016
- 29 août 2006 à 16:13
 Pedd - 16 mai 2008 à 21:39
Bonjour,
Je savais bien que je ne serais pas longue à repasser par là...
J'ai un problème sur un filtre (données numériques+alpha)

explication : invite de saisie dans textbox sur formulaire.
la valeur saisie est retournée dans 1 filtre auto (contient valeur)
mon code est le suivant :
If TextBoxRF <> Empty Then Selection.AutoFilter Field:=3, Criteria1:="=*" & TextBoxRF.Value & "*"

le problème est que qd on saisie du numérique (partiel), ça ne retourne pas toutes les valeurs.
Ca ne vient a priori pas du code, car meme en passant pas les filtres sur la feuille de données, la saisie numérique partielle marche mal.

Savez vous si c'est un pb d'exel en général ou si la vérité est ailleurs?

5 réponses

zigwen
Messages postés
24
Date d'inscription
mercredi 6 juin 2001
Statut
Membre
Dernière intervention
29 août 2006

29 août 2006 à 16:19
Salululu,
t'es sure que c'est pas plutot un like que un = que tu veux ? Si tu mets des * c'est sans doute pour une recherche partielle dans plutot un like ...
Dis moi...
0
lulu37
Messages postés
76
Date d'inscription
jeudi 24 août 2006
Statut
Membre
Dernière intervention
8 avril 2016
13
31 août 2006 à 17:00
ALLO ZIGWEN !
Tu es toujours là?
Ludivine
0
lulu37
Messages postés
76
Date d'inscription
jeudi 24 août 2006
Statut
Membre
Dernière intervention
8 avril 2016
13
29 août 2006 à 16:56
je ne sais pas si c'est like que je veux, mais je veux :
=> que la valeur saisie (partielle ou complète) soit retournée dans le filtre auto,
=> sans respecter la casse de préférence (sinon galère), et
=> que si on tape "20", que ça retourne toutes les données avec "20" que ce soit au début, au milieu ou à la fin des cellules des données filtrées. (contient me semblait convenir)
...
dis moi si c'est bien like que je veux...car je ne le connais pas celui là
0
Armojax
Messages postés
1852
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
9 mars 2022
1 506
31 août 2006 à 17:41
Hello ludivine,

La recherche "contient..." du filtre personnalisé ne fonctionne pas avec des valeurs numériques. Donc si tu as des valeurs numériques dans ta colonne, il faut que tu les stockes en format texte, et là ça marchera.
0
lulu37
Messages postés
76
Date d'inscription
jeudi 24 août 2006
Statut
Membre
Dernière intervention
8 avril 2016
13
4 sept. 2006 à 12:22
Merci Armojax, ca fonctionne
Seulement, j'ai formaté ma colonne en format texte, mais les nouvelles données saisies ne sont pas reconnues en tant que texte, obligée de mettre un ' devant chaque nombre...
Est ce que c'est normal ?
Ludivine
0
Kobaya
Messages postés
282
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
10 janvier 2008
214
4 sept. 2006 à 14:09
Bonjour tout le monde,

Oui lulu37, c'est normal. Si tu saisies une apostrophe ' devant une valeur numérique, tu forces Excel à interpréter cette valeur numérique comme une chaîne de caractères. Mais par défaut, Excel considère des chiffes comme une valeur numérique (c'est assez logique).

Un exemple de code pour te permettre de modifier tes données, en considérant que toutes les cellules de la feuille sont à modifier (à adapter bien sûr) :
Sub NumToChaine()
     Dim rngCell As Range

     For Each rngCell In ActiveSheet.Cells
          If Not IsEmpty(rngCell) Then
               rngCell.Value = "'" & rngCell.Value
          End If
     Next
End Sub
0
lulu37
Messages postés
76
Date d'inscription
jeudi 24 août 2006
Statut
Membre
Dernière intervention
8 avril 2016
13 > Kobaya
Messages postés
282
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
10 janvier 2008

4 sept. 2006 à 15:33
Peux tu me donner l'adaptation pour l'appliquer seulement sur la colonne C s'il te plaît ?
Lud
0
Armojax
Messages postés
1852
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
9 mars 2022
1 506
4 sept. 2006 à 14:01
Bonjour ludivine,

j'ai formaté ma colonne en format texte, mais les nouvelles données saisies ne sont pas reconnues en tant que texte

Oui, ça paraît bizarre, mais c'est tout à fait normal.
Une cellule Excel peut contenir n'importe quoi, et sans précision spéciale, le format par défaut est Standard. Ça veut dire que quand on y place quelque chose, Excel prend une décision et analyse le type de donnée. Si après analyse Excel a décelé que le contenu est numérique, la propriété est définitivement acquise. Si ensuite tu dis que le format de la cellule est de type texte, Excel va cadrer la valeur à gauche, mais c'est seulement une question de format, et la donnée reste définie comme numérique.

Tu peux facilement en VBA convertir ton code postal numérique en texte, en appliquant par exemple une commande de ce type (exemple pour la cellule (1, 1) ):
Cells(1, 1).Value = Format(Cells(1, 1).Value, "00000")
0

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

Posez votre question
salut
je suis Pedd, j'aimerais savoir pourquoi et a quoi sert de filtrer automatiqument dans Excel.
Merci.
0