Bizarrerie sur Filtre

Bonjour à tous,

Ces 2 codes de filtre élaboré ne donnent pas le même résultat ! malgré un critère identique

Sub Filtre() 'faux
Range("Base").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("a5:h6"), Unique:=False
End Sub

Sub FiltreFormule() 'ok
Range("Base").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("f1:f2"), Unique:=False
End Sub

Avez-vous une idée du pourquoi ?

Bonne journée

Claude

22question-filtre.zip (38.74 Ko)

Bonjour Claude

Il est probable que l'un des filtres ne prend en compte que la comparaison des caractères et l'autre inclut le format de cellule.

Les cellules de la colonne A sont au format Standard sauf celles qui présentent l'anomalie qui sont au format texte.

Regarde sur ce fichier la colonne J qui contient la formule nommée à partir de LIRE.CELLULE et renvoie le format.

Toutefois, si ceci montre où est le problème, l'anomalie persiste même en modifiant les formats. Tu peux la faire disparaître avec en Critère en A6

*19007701 ou en tapant l'astérisque avant le contenu complet de A6

Cordialement

Bonjour Amadéus,

Bizarre bizarre !

même en mettant toute la colonne A au même format (Texte ou Standard)

on a le même phénomène,

remarque:

en ajoutant un astérisque à la fin du critère en A6,

le résultat est bon (pourtant il n'y a pas d'espace à la fin)

encore un mauvais coup de "Crosoft" ?

Claude

2020 05 01 1354

Bonjour

J'ai regardé ton fichier aussi, je pense que le soucis est du à l'extraction.

Si tu multiplie la colonne A par 1, ou meme que tu la convertise en format nombre le résultat des cellules est different de la valeur texte.

Voir peut être le format au moment de l'importation de cette colonne

Bonjour Bruno,

effectivement, si on fait un CNUM de la colonne A et ensuite un collage spécial valeur,

les 4 derniers chiffres sont remplacés par des zéros

Ce qui n'explique pas pourquoi le filtre par formule fonctionne sans problème !

il y a donc danger dans cette histoire et comment y remédier ??

Claude

Claude

En mettant en A6

="*"&A1

Cordialement

50listingmembrespq.xlsm (294.43 Ko)

Bonjour Claude

Tes cellules contiennent plus de 15 caractères... là excel ne voit plus la même chose.

Amicalement

Bonjour Claude

en effectuant le filtre en text,ça fonctionne

Range("Base").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("a5:h6").Text, Unique:=False

Cordialement

Bob

Bonsoir à tous,

Bob,

Je pensais que tu avais trouvé ! mais manque de pot,

avec ta ligne de code, le filtre prend en compte le dernier critère valide en mémoire de l'ordi,

c'est à dire dans ce cas F1:F2

supprime le bouton du haut et le nom défini "Criteres", tu verras çà ne filtre plus rien.

Dan,

je crois que tu as mis le doigt dessus, 19 caractères doit dépasser les limites ?

çà voudrai dire que si un doute au NBCAR, il faut contrôler avant de filtrer ou ajouter l'astérisque.

depuis le temps que je fais des filtres élaborés, j'ai jamais eu ce problème.

çà n'explique toujours pas pourquoi çà marche avec le critère en formule.

Claude

re Claude

désolé de t'avoir entrainé sur une mauvaise piste

a+

Bob

Re,

Claude,

Pour excel, le nombre de caractères en format nombre est de 15 et le nombre de caractères en format texte est de 256.

Dans ta colonne A certains chiffres ont une apostrophe devant et d'autre pas.

Par ailleurs clique dans chaque cellule puis touche ENTREE sur ton clavier, va supprimer toutes les données contenant plus de 15 chiffres et les remplacer par des zéro.

Refais ensuite le test.

Bonsoir,

Merci à tous pour vos réponses,

Je lance un appel aux "formulistes" pour savoir si cette colonne "A" sera exploitable pour des calculs

du genre SOMMEPROD en vue de statistiques.

j'en doute !

Bonne soirée

Claude

1loureed.xlsx (53.88 Ko)

Bonsoir Claude

Je pense que oui, car, déjà noté, par exemple les x premiers caractères sont identiques.

On peut donc travailler sur les y suivants avec des fonctions de textes, des CNUM(DROITE...ou des DROITE()*1 pour sortir en numérique et utiliser des Sommeprod, Moyennes et autres

Dis toujours, on verra ..

Cordialement

Bonsoir Amadéus,

par exemple sommer la colonne Débit pour chaque N°carte

et combien de fois apparait chaque N° dans la base

si on conserve le N° tel quel, le résultat est erroné me semble t-il

Amicalement

Claude

Bonjour Claude

Un exemple dans le rectangle bleu en haut à droite

Amicalement

Bonjour Amadéus, forum,

Merci, je note et mets de coté,

Je vais proposé à notre ami "remibob" de scinder le N° de carte

pour assurer le coup (surtout pour les filtres éventuels à venir)

Bonne journée

Claude

capture
17remibob5.zip (61.06 Ko)
1commande.docx (196.75 Ko)

Bonsoir à tous,

Le sujet méritait bien d'être soulevé !

Conclusion:

Méfiance sur les chiffres en texte de + de 15 caractères

Merci à tous,

Amicalement

Claude.

Rechercher des sujets similaires à "bizarrerie filtre"