Filtre une colonne avec plusieurs criteres

Résolu
CHARLYJACK Messages postés 345 Date d'inscription   Statut Membre Dernière intervention   -  
CHARLYJACK Messages postés 345 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à toutes et à tous,

Voici mon problème, j'ai une base de données de 4000 lignes
sur une feuille de classeur excel 2003.

Chaque colonne correspond à un organigramme
nom de direction, un code, les sous directions, code .....

Mon problème c'est que je ne peux pas placer mon filtre sur la première colonne car les libellés ne sont pas précis et je perds des données.

Je suis obliger de selectionner sur la colonne H une multitude de codes pour identifier une direction colonne B.

Le problème c'est qu'avec un filtre classique on ne selectionne que deux codes (critères).

Est il possible avec un code VBA de filtrer sur plusieurs critères (codes)
voire à partir d'une liste de codes sur une autre feuille.

merci d'avance

Charlyjack
A voir également:

1 réponse

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

si j'ai bien compris, un exemple pour conserver les lignes correspondants a une table

Sub tri()
    Dim table_tri
    
    'adaptez les noms de feuille, plage de cellules
    'transfert table de codes filtre,
    Set table_tri = Worksheets("feuil2").Range("A1:A10")
    'enleve filtre precedent
    Worksheets("feuil1").Range("$A$1:$K$25").AutoFilter Field:=1
    'filtre sur une colonne: ici 5 critieres extensibles a x en fonction de la table de codes filtre
    Worksheets("feuil1").Range("A1:K25").AutoFilter Field:=1, Criteria1:=Array(CStr(table_tri(1, 1)), _
                                                                                                               CStr(table_tri(2, 1)), _
                                                                                                               CStr(table_tri(3, 1)), _
                                                                                                               CStr(table_tri(4, 1)), _
                                                                                                               CStr(table_tri(5, 1))), Operator:=xlFilterValues
End Sub


A+
2
CHARLYJACK Messages postés 345 Date d'inscription   Statut Membre Dernière intervention   1
 
Bonjour et merci
tu as parfaitement compris ça marche du feu de dieu.
je reste admiratif de cette maitrise de VBA,
J'ai beau acheter des livres et manger du code sur internet,
je n'arrive pas à construire.

Encore merci

Charlyjack
0
CHARLYJACK Messages postés 345 Date d'inscription   Statut Membre Dernière intervention   1
 
Désolé de déranger à nouveau,
mais autant ça marche bien sur 2007,
autant sur 2003 ça bloque,
Aurais tu une idée ?

merci
0