1 pièce(s) jointe(s)
Filtre à partir d'une liste
Bonjour à tous,
Je suis en difficulté sur une macro.
Je cherche à venir filtrer massivement sur base de plusieurs références en même temps. L'idée est d'éviter de filtrer les données une par une pour optimiser les temps de traitement.
L'idée, c'est de prendre donc ma liste de référence, dans la feuille 1. Je viens stocker les valeurs dans un tableau en vba, et j'applique le filtre sur la feuille 2 sur base des valeurs de mon tableau. Je m'attends donc à ce que le filtre soit fait en une seule fois.
Le problème est que le filtre remonte vide. pourtant unitairement, et quand je le fais à la main, je ne rencontre aucun soucis.
Voici le code que j'utilise. Je vous transmets le fichier également (j'ai simplifié un maximum le fichier pour vous exposer clairement ma problématique)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
Sub test()
Application.ScreenUpdating = False
s1 = "1"
s2 = "2"
nbls1 = Sheets(s1).Range("A1000").End(xlUp).Row
Sheets(s1).Activate
ReDim myArray(nbls1 - 2)
For j = 2 To nbls1
myArray(j - 2) = Cells(j, 1).Value
Next j
Sheets(s2).Activate
Range("A1").AutoFilter Field:=1, Criteria1:=myArray, Operator:=xlFilterValues
End Sub |