Sub ExportClasseur()
Dim Unique As Object
Dim DerLigne As Integer, DerColonne As Integer
Dim Plage As Range, c As Range
Dim Valeur
Set Plage = Feuil1.UsedRange
Set Unique = CreateObject("Scripting.Dictionary")
If Feuil1.AutoFilterMode Then Feuil1.AutoFilterMode = False
DerLigne = Plage.Cells(Columns(1).Cells.Count, 1).End(xlUp).Row
DerColonne = Plage.Cells(1, Rows(1).Cells.Count).End(xlToLeft).Column
For Each c In Plage.Range(Cells(2, 1), Cells(DerLigne, 1))
If Not Unique.Exists(c.Value) Then Unique.Add c.Value, c.Value
Next c
For Each Valeur In Unique.keys
Plage.Range(Cells(1, 1), Cells(DerLigne, DerColonne)).AutoFilter Field:=1, Criteria1:=Valeur
Workbooks.Add
Plage.Copy [a1]
Application.Dialogs.Item(xlDialogSaveAs).Show Valeur & "_YES"
ThisWorkbook.Activate
Feuil1.ShowAllData
Next
End Sub