1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| Sub ventil()
Ltitre = 3
col = 2
nomfeuille = ActiveSheet.Name
Do Until Sheets(nomfeuille).Cells(Ltitre, col).Value = ""
'copie de la feuille contenant le tableau
Sheets(nomfeuille).Copy After:=Sheets(ActiveWorkbook.Sheets.Count)
'on renomme la copie
ActiveSheet.Name = Cells(Ltitre, col).Value
'suppression des colonnes inutiles. On ne garde que le produit a traiter
colsuppr = 2
Do Until Cells(Ltitre, colsuppr).Value = ""
'on vérifie si c'est le bon produit pour supprimer la colonne
If Sheets(nomfeuille).Cells(3, col).Value <> Cells(Ltitre, colsuppr).Value Then
'suppression de la colonne
Cells(Ltitre, colsuppr).EntireColumn.Delete
Else
'on passe à la colonne de produit suivante
colsuppr = colsuppr + 1
End If
Loop
'mise en place du filtre
Range("B" & Ltitre).AutoFilter
ActiveSheet.Range("$A$" & Ltitre).AutoFilter Field:=2, Criteria1:="<>"
'on passe a la création de la feuille suivante pour le prochain pdt
col = col + 1
Loop
End Sub |
Partager