Sub GetUniques()
Dim d As Object, c As Variant, i As Long, lr As Long
Set d = CreateObject("Scripting.Dictionary")
lr = Cells(Rows.Count, 1).End(xlUp).Row
'Ajout d'une colonne transitoire à droite du tableau ici B
[B2].FormulaR1C1 = _
"=CHOOSE(MONTH([@[Date commande]]),""Janvier "",""Février "",""Mars "",""Avril "",""Mai "",""Juin "",""Juillet "",""Août "",""Septembre "",""Octobre "",""Novembre "", ""Décembre "") & YEAR([@[Date commande]])"
c = Range("b2:b" & lr)
For i = 1 To UBound(c, 1)
d(c(i, 1)) = 1
Next i
'transfert des dates sans doublons dans la colonne E à modifier selon le besoin
Range("e2").Resize(d.Count) = Application.Transpose(d.keys)
'Suppression de la colonne transitoire ici B à modifier
Columns("B:B").Delete Shift:=xlToLeft
'CREATION DES FEUILLES
'd2 à changer par l'adresse de la première ligne contenant les dates
datas = [d2].Resize(Cells(Rows.Count, 4).End(xlUp).Row - 1).Value
Set dict = CreateObject("Scripting.Dictionary")
For lig = LBound(datas) To UBound(datas)
ShtName = datas(lig, 1)
Set Ws = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
With Ws
.Name = ShtName
End With
Next lig
End Sub