Re,
Sans voir tes fichiers et surtout dans quel fichier se trouve le code. En supposant que le code se trouve dans "Tableau de bord....", essaie le code comme ceci :
Sub ESSAI()
'
Dim wk As Workbook
For Each wk In Workbooks
If Left(wk.Name, 22) = "Tableau_de_bord_appro_" Then Workbooks(wk.Name).Activate: Exit For
Next
With ActiveSheet.Range("$A$1:$AU$220682")
.AutoFilter Field:=1, Criteria1:="11222"
.AutoFilter Field:=5, Criteria1:=Array( _
"1", "10", "100", "102", "105", "108", "11", "110", "117", "118", "12", "120", "128", "13", _
"130", "132", "134", "135", "14", "140", "144", "1440", "147", "15", "150", "16", "160", _
"168", "17", "18", "180", "19", "192", "2", "20", "200", "201", "204", "21", "210", "22", _
"23", "24", "246", "25", "252", "26", "27", "28", "280", "288", "3", "30", "300", "308", "32" _
, "33", "330", "336", "34", "35", "36", "37", "39", "4", "40", "42", "420", "432", "44", "45", _
"46", "48", "5", "50", "504", "52", "53", "55", "56", "560", "6", "60", "600", "64", "66", _
"68", "7", "70", "71", "72", "738", "75", "8", "80", "800", "81", "84", "85", "88", "9", "90", _
"92", "96", "98", "99"), Operator:=xlFilterValues
.AutoFilter Field:=6, Criteria1:="<>"
.AutoFilter Field:=7, Criteria1:=Array( _
"1", "1000", "1001", "1008", "1009", "1013", "1020", "1022", "1027", "1030", "1039", _
"1041", "1046", "1059", "1061", "1062", "1072", "1080", "1092", "12", "20", "2000", "21", _
"322", "341", "401", "442", "4898", "869", "879", "899", "965", "966", "967", "978", "980", _
"986", "999"), Operator:=xlFilterValues
End With
With ActiveSheet
.Range(.Range("B1"), .Range("B1").End(xlDown)).Copy Workbooks("OUTIL SUIVI DES RECEPTIONS.xlsx").ActiveSheet.Range("A1")
.Range("D1:F33787").Copy Workbooks("OUTIL SUIVI DES RECEPTIONS.xlsx").ActiveSheet.Range("B1")
End With
Le fichier OUTIL SUIVI DES RECEPTIONS doit être ouvert quand tu vas exécuter ta macro
A te relire
Crdlt