Sub es()
Dim t(), t1(), x As Long, i As Long, y As Long
' détermination de la plage de travail
t = Feuil2.Range("b17:h" & Feuil2.Cells(Rows.Count, 2).End(xlUp).Row)
ReDim t1(1 To UBound(t), 1 To 7) 'Définition d'1 tablo variable sur 7 colones et t lignes
For i = 1 To UBound(t) 'UBound = fct renvoie la limite sup du tablo (Nb de Lg)
' si les cell de la colonne 2 contiennent 1 des critères
If Left(t(i, 2), 3) = 328 Or t(i, 2) = 3204862 Or t(i, 2) = 3209022 _
Or t(i, 2) = 32007522 Or t(i, 2) = 3202851 Then
'ligne svte
x = x + 1
'pour les colonnes 1 à 7 de t
For y = 1 To 7: t1(x, y) = t(i, y): Next y 'ex à partir de i=4 cond ok
'Explication détaillée à l'aide de la touche F8
'F8 => For y = 1 To 7 (pour les colonnes 1 à 7)
'F8 => : t1(x, y) = t(i, y) (t1(x,y) = vide t(i,y) = 1ère col sect
'F8 => : Next y (col suivte y=2)
'F8 => : t1(x, y) = t(i, y) (t1(x,y) = vide t(i,y) = 2eme col P
'F8 => : Next y (col suivte y=3) ... jusqu'à 7ème col
End If
Next i 'i=5
Feuil1.Cells.ClearContents 'efface la feuille d'arrivée des données
Feuil1.[A1].Resize(x, 7) = t1 'affecte les données en mémoire (sans mise en forme)
End Sub