Filtre sur plusieurs colonnes

Bonjour,

J'aimerais filtrer sur plusieurs colonnes, c'est à dire pouvoir choisir dans une liste à cocher où figureraient dans une seule liste tous les contenus de mes colonnes.

Voici le principe (mon tableau fait plusieurs milliers de lignes et je voudrais filtrer sur le contenu de 17 colonnes mais sur le principe, ça fonctionne comme ça) :

image

Je voudrais placer une liste au-dessus de mes colonnes à filtrer (ici, colonnes B, C, D) où je pourrais choisir les items contenus dans ces colonnes, soit : a,b,c,d,e,f,Vide. En sélectionnant par exemple "a", seules les lignes contenant "a" s'afficheraient.

Des mois que je bidouille les filtres sans succès, ni par mes recherches. J'imaginais une solution sans utiliser des macros, que je ne maitrise pas (sauf à faire un bête copier-coller). A l'heure actuelle, je coche les valeurs dans le filtre de chaque colonne, c'est souvent fastidieux et source d'erreurs.

Merci d'avance pour vos réponses.

Salut Slelay,

Première règle : nous fournir un fichier réaliste, que nous n'ayons pas, en plus, à imaginer ton monde, avec des listes et une BDD qui ressemblent à quelque chose d'exploitable, anonyme mais exploitable, illustrés dans une structure fidèle à ton fichier de travail pour que nous ne tournions pas autour du pot, stp !

En te remerciant,


A+

Bonsoir, curulis57 bonsoir,

en effet, sauf erreur de ma part, si vous faites un filtre sur "a" en colonne B de votre image, alors les lignes "a" des colonnes C et D vont être masquées, et alors vous n'aurez plus le "a" disponible sur ces colonnes.
Pour ma part je ne vois que du VBA, mais sinon il doit être facile de faire ceci avec un tableau structuré et PowerQuery !

Pour le code VBA, une boucle sur vos lignes, un CountIf pour tester le nombre de fois qu'apparait la valeur du filtre sur la ligne :
Si égal à 0 alors on masque la ligne, sinon on la laisse visible.

Lors du changement de valeur de filtre, un petit code qui initialise le tableau afin d'afficher toutes les lignes.

@ bientôt

LouReeD

Bonsoir,

voici un fichier représentatif de ce que je disais :

Non optimisé, bien sûr !

Il faudra dans ce cas avoir un petit code afin d'afficher toutes les lignes...

@ bientôt

LouReeD

Bonjour,

Merci pour les débuts de réponse. Le fichier fourni me semblait plus accessible si simplifié. Voici à quoi ressemble mon fichier en réalité :

image

Et je vous joins un extrait en format excel.

Pour être explicite sur mes objectifs, je voudrais pouvoir sélectionner les lignes pour lesquelles la colonne J (GPMATCH) contient par exemple a-a mais pas b-b . Avec les connaissances dont je dispose, j'avais chaque item de la colonne J dans les colonnes suivantes, en pendant pouvoir filtrer sur plusieurs colonnes (d'où ma volonté d'avoir un filtre avec une sélection multiple possible). Peut-être y a-t-il une autre solution pour travailler directement sur la colonne J.

Je vous remercie pour vos conseils.

@Loureed : c'est un début mais je voudrais pouvoir sélectionner plusieurs critères... et il va falloir que je me forme un peu plus ;-)

Salut Slelay,
Salut LouReed,

par exemple a-a mais pas b-b

Sans compter des an-@ ou des e-# ?? Késaco ?? Explique avec, ici, c'est franchement utile, un tableau de ce que tu attends comme résultat, stp !
Je veux bien essayer parfois de deviner les choses mais, là, j'ai franchement besoin d'infos !!
Tu veux filtrer sur plusieurs colonnes / critères : AND ? OR ?

Sortant d'une journée bois, j'ai du mal à réaligner mes neurones sur Excel, sans doute !


A+

Concrètement, toutes ces associations a-a ; b-b ; an-@, etc... sont des correspondances entre une écriture et le son qu'on dit quand on lit cette écriture.

Je veux pouvoir sélectionner les mots dans lesquels on a la correspondance a-a OU b-b OU an-@ OU... mais PAS c-c OU è-E par exemple.

Le nombre de correspondance est limité (je n'ai pas extrait de liste complète). Je voudrais pouvoir cocher les correspondances souhaitées et les non souhaitées (le but : je suis instit en CP et je veux pouvoir cocher les correspondances au fur et à mesure de leur apprentissage pour ne ressortir que les mots que mes élèves peuvent déchiffrer avec leurs connaissances).

J'espère être assez claire cette fois. N'hésitez pas si besoin d'autres précisions. Merci beaucoup !

Bonsoir,

Voici votre fichier avec un test sur 4 sons, et j'ai modifié quelques valeurs pour les tests :

@ bientôt

LouReeD

Attention !

Contrairement au titre du fil, je ne travaille pas sur plusieurs colonnes, j'utilise uniquement la colonne 10 de la plage de données.
Je pourrais d'ailleurs ne prendre que la colonne 10 pour faire les tests ce qui libérerait de la mémoire sous VBA.

@ bientôt

LouReeD

Mince en relisant je suis trop restrictif avec votre souhait :
a-a coché et b-b coché et pas les autres cela ne fait sortir que les a-a ET b-b uniquement, hors vous voulez ceux où il y a a-a OU b-b mais sans les autres à moins que ce soit sans les autres désignés...

Du coup la boite à cocher n'est pas suffisante, il faudrait ajouter un bouton radio en plus pour chaque son :

bouton radio "avec" ou "sans" le son et la boite à cocher : cochée on prend en compte le choix du son, si décocher alors indifférent.

Donc avec l'exemple ci dessus on aurait a-a et b-b cocher, puis les deux en radio "Avec" du coup toutes les lignes avec " a-a " OU "b-b " ou " a-a ET b-b " seront affichées, et si c-c cocher avec radio à "sans" on aurait en résultat " a-a ET sans c-c " ou " b-b ET sans c-c" o u "a-a ET b-b ET sans c-c"

@ bientôt

LouReeD

Salut Slelay,
Salut Lou Reed,

j'ai beaucoup de mal avec cette phrase :

on a la correspondance a-a OU b-b OU an-@ OU... mais PAS c-c OU è-E par exemple

Comme je le demandais déjà, un exemple illustré sur quelques mots avec critères ET/OU selon tes besoins serait le bienvenu !


A+

Salut Curulis57,

Salut Loureed,

Merci pour votre persévérance !

J'avoue avoir un peu cogité sur les boutons radio "avec" ou "sans"... En réalité, je ne cherche pas forcément un mot avec certains sons (quoi que ça arrive aussi, mais une simple recherche fait généralement l'affaire, à moins de chercher à avoir absolument 2 correspondances, par exemple a-a et b-b). Généralement, je cherche un mot qui a potentiellement certaines correspondances (celles que mes élèves connaissent). Potentiellement, mais pas nécessairement (d'où le OU). Par contre, l'ensemble des correspondances encore inconnues de mes élèves ne doivent absolument pas apparaitre.

Travailler seulement sur la colonne J est peut-être la meilleure solution. J'avais déconcaténé l'ensemble dans les colonnes suivantes pour pouvoir me servir des filtres, ce n'était peut-être pas la meilleure solution.

Pour ce qui est d'un exemple concret :

- je coche les correspondances connues de mes élèves parmi la liste complète : je coche a-a ; à-a ; e-* ; e-#; i-i ; î-i ; o-o ; o-O ; u-y ; y-i ; l-l ; ll-l ; m-m ; mm-m ; n-n ; nn-n ; r-R ; rr-R ; s-s ; ss-s ; s-# ; t-#

- le fichier me retourne la liste des mots pouvant contenir une ou plusieurs de ces correspondances mais aucune de celles que je n'ai pas coché (toutes les autres, en fait)

Je peux obtenir les mots : salé, lasso, rassuré, surimi, mamie, car tous ces mots contiennent une ou plusieurs des correspondances cochées mais aucune de celles que je n'ai pas coché. Je ne peux pas obtenir le mot "marche" (m-m.a-a.r-R.ch-S.e-*) car il me manque la correspondance ch-S (même si j'ai toutes les autres).

J'espère que cet exemple vous aidera. Encore merci.

Je me rends compte que l'extrait que je vous ai fourni ne permet pas de bien travailler car tous les mots commencent par ab (correspondances a-a et b-b). En voici un autre. (ça ne fonctionne pas :-/)

Stéphanie

Réflexion complémentaire...

On peut peut-être réfléchir "à l'envers" et ne préciser que les correspondances interdites. Du coup, afficher tous les mots qui ne contiennent pas les correspondances inconnues de mes élèves.

Salut Stéphanie (vachement plus joli que Slelay ),

peux-tu nous fournir les correspondances de son, stp ?

e-* ; e-#

Lequel correspond à "é" pour "salé" ??


A+

Bon OK, erreur de ma part... je ne peux pas avoir salé avec la sélection que je propose. Pour é, la correspondance est é-e (oui, ça peut paraitre bizarre mais c'est basé sur l'alphabet phonétique).

J'ai extrait la liste exhaustive des correspondances graphème-phonème... il y en a 264 !!!!!!

Le tri que je faisais pas colonne ne me permettait de voir qu'il y en avait tant !

Voici les quelques-uns qui peuvent être incompréhensibles ou porter à confusion entre le codage et l'écriture habituelle de ce son :

codageson habituel
#muet
9oeu
*e
5in
@an
jy
yu
uou
Sch
Eè
2eu
8ui
Gng
Ngn
Zj
§on

Par contre, impossible de joindre le fichier complet des 264 CGP, ça ne fonctionne pas.

A+

Encore une autre idée...si ça peut aider.

Je peux aussi avoir dans une feuille différente, la liste des correspondances "oui" et la liste des correspondances "non"... que je met à jour chaque semaine au fil des apprentissages de mes élèves. ça peut peut-être servir pour faire une requête, et rechercher les mots qui ne contiennent pas les correspondances "non".

Des fois que ça soit plus simple...

Salut Slelay,

toujours en ligne ? Extra !
Je commence justement une seconde feuille avec un embryon de ces 264 phonèmes, histoire de pouvoir tester quelque chose.
Pourquoi pas ces oui/non : combien de classes as-tu qui ont peut-être des niveaux différents ?

Bête question : les mots de ta BDD sont-ils tous systématiquement accompagnés de leur "GPMATCH" !?


A+

Salut Stéphanie,

ton fichier de retour avec plusieurs idées à creuser...

- dans la feuille 'SONS', je t'invite à compléter tes 264 phonèmes : chacun sa part de boulot !
Ils se trieront au fur et à mesure de leur encodage.

image

- le plus gros se passe dans la feuille 'BDD' où je n'ai conservé que tes GPMATCH ;
- en [B1-C1,...], un clic ouvre une liste de validation reprenant les lettres de l'alphabet de la ligne 1 de 'SONS' : pas obligée de suivre l'alphabet, bien sûr... ;
- ce choix entraîne l'ouverture d'une seconde liste de validation une ligne plus bas qui reprend les phonèmes de cette colonne ;

image

- si tu effaces le choix en ligne 1, les deux cellules s'éliminent ;
- en [A2], tu peux choisir le type de tri : ET - OU - NON en cliquant simplement à la volée : je ne dois pas t'expliquer le sens, j'imagine... ;
- 1 double-clic sur [A1] démarre le tri dont les résultats s'affichent en 'EXTRACT'.

    iNb = Cells(1, Columns.Count).End(xlToLeft).Column - 1
    tTab = Range("A4:J" & Range("J" & Rows.Count).End(xlUp).Row).Value
    tMatch = Range("A2").Resize(1, Cells(2, Columns.Count).End(xlToLeft).Column).Value
    '
    For x = 1 To UBound(tTab, 1)
        iFlag = 0
        For y = 2 To UBound(tMatch, 2)
            If InStr(tTab(x, 10), tMatch(1, y)) > 0 Then iFlag = iFlag + 1
        Next
        If ([A2] = "ET" And iFlag = iNb) Or ([A2] = "OU" And iFlag > 0) Or ([A2] = "NON" And iFlag = 0) Then
            iIdx = iIdx + 1
            ReDim Preserve tExtract(10, iIdx)
            For Z = 1 To 10
                tExtract(Z - 1, iIdx - 1) = tTab(x, Z)
            Next
        End If
    Next
6slelay.xlsm (39.08 Ko)


A+

Salut Curulis,

De mieux en mieux ! Merci !

Ce tri par ordre alphabétique faciliterait grandement la recherche d'une correspondance parmi les 264, mais ne me permet pas, je pense, de ne choisir qu'une seule correspondance par lettre de l'alphabet (donc si je veux avoir a-a mais pas ai-E, ou n'avoir ni ai-E, ni an-@, je pense que je ne peux pas. Peut-être le plus simple dans ce cas est de faire la même chose avec une colonne par correspondance, si elles sont triées par ordre alphabétique ou par ordre d'apprentissage, pas de souci pour moi)

Peut-être qu'au lieu de choisir entre ET, OU et NON, on pourrait avoir une ligne pour chaque, ce qui permettrait de choisir à la fois des mots sans les graphèmes inconnus de mes élèves mais avec celui qu'on travaille cette semaine en particulier (une amélioration sympathique !)

Hier, impossible de joindre un fichier à mon message, je vais voir ce que je peux faire aujourd'hui et voir si j'arrive à mettre un peu plus les mains dans le cambouis et essayer de comprendre tout ça d'un peu plus près.

Merci et A+

... et oui, je suis connectée parfois un peu tard... je suis en Guyane ! (et en plus, notre rentrée est décalée donc il me reste encore une semaine pour tout préparer)

2slelay.xlsm (40.85 Ko)
Rechercher des sujets similaires à "filtre colonnes"