Macro filtre en fonction d'une liste de critères

Bonjour,

je souhaites améliorer une macro : je veux faire un filtre en fonction de plusieurs critères, j'utilises la macro suivante qui fonctionne très bien.

Dim t

t = Array("A", "D", "F", "G")

Range("A1:N1").AutoFilter

Range("$A$1:$N$60000").AutoFilter Field:=1, Criteria1:=t, Operator:=xlFilterValues

le soucis de cette macro c'est que ma liste de critère peut-être très longue et changer régulièrement, je dois constamment ajouter/modifier des valeurs dans "Array", est-il possible de récupérer mes données à lister qui se trouverait dans une autre feuille Excel.

Ci-joint un exemple

merci d'avance pour votre aide

146classeur1.xlsm (19.31 Ko)

Bonjour

A tester

merci beaucoup ça fonctionne

Banzai64 a écrit :

Bonjour, je nouveau sur ce forum et aussi novice. j'ai trouvé votre macro pour réaliser un filtre avec sélection multiple. Cette Macro fonctionne trés bien mais quand je remplace le lettre par des chiffres (ex : 1556) la macro fonctionne mais le résultat du filtre est Nul. pouvez vous m'aider. la macro est : debutant75 Filtre suivant liste V001 édité le 28/07/2014.

Merci.

email. jean-marc.fabre@orange.fr

A tester

Bonsoir

IL faut des critères au format texte

Modifies la macro

Sub filtre()
Dim MSN As Object
Dim T As Long

  Set MSN = CreateObject("Scripting.dictionary")
  With Sheets("SelectMSN")
    For T = 2 To .Range("A" & Rows.Count).End(xlUp).Row
     MSN(CStr(.Range("A" & T).Value)) = ""
    Next T
  End With

  Range("A1:N1").AutoFilter

  Range("$A$1:$N$5000").AutoFilter Field:=1, Criteria1:=MSN.keys, Operator:=xlFilterValues

End Sub
Banzai64 a écrit :

Bonsoir

IL faut des critères au format texte

Modifies la macro

Sub filtre()
Dim MSN As Object
Dim T As Long

  Set MSN = CreateObject("Scripting.dictionary")
  With Sheets("SelectMSN")
    For T = 2 To .Range("A" & Rows.Count).End(xlUp).Row
     MSN(CStr(.Range("A" & T).Value)) = ""
    Next T
  End With

  Range("A1:N1").AutoFilter

  Range("$A$1:$N$5000").AutoFilter Field:=1, Criteria1:=MSN.keys, Operator:=xlFilterValues

End Sub

Merci Beaucoup, cela fonctionne parfaitement. cordialement. Jmarc

Rechercher des sujets similaires à "macro filtre fonction liste criteres"