Sub es()
Dim c As Variant, m As Object
Application.ScreenUpdating = False
Set m = CreateObject("Scripting.Dictionary")
For Each c In Range("a2", Cells(Rows.Count, "a").End(xlUp))
m(c.Value) = IIf(m.Exists(c.Value), m(c.Value) + 1, 1)
Next c
[b2].Resize(m.Count, 1) = Application.Transpose(m.keys)
End Sub
Sub es()
Dim c As Variant, m As Object
Application.ScreenUpdating = False
Set m = CreateObject("Scripting.Dictionary")
For Each c In Range("a2", Cells(Rows.Count, "a").End(xlUp))
m(c.Value) = IIf(m.Exists(c.Value), m(c.Value) + 1, 1)
Next c
[b2].Resize(m.Count, 1) = Application.Transpose(m.keys)
End Sub
Bonjour,
en se basant sur le fichier exemple de Calvus, ci-joint 3 possibilités par formules, dont la 3ème ne nécessite pas de laisser la 1ère ligne vide.
La liste de la colonne A est nommée et accepte les cellules vides.
A+
Sub a_Sofhy_Suggestion_In_VBA()
With Range("A1:A6")
.Sort _
Key1:=Range("A2"), _
Order1:=1, Header:=1, _
OrderCustom:=1, _
MatchCase:=False, _
Orientation:=1
.AdvancedFilter _
Action:=2, _
CopyToRange:=Range("B1"), _
Unique:=True
End With
End Sub
Bonjour Hervé, Calvus, David et Staple, sans oublier les zotres,
Merci encore pour votre partage si précieux. Je voudrais rebondir sur le travail de David pour savoir comment je pourrais extraire les données qui seraient notées en lignes et non en colonnes.
Si jamais ça vous, ou te dit...
Merci à toi
Chubby