Private Sub Worksheet_Activate()
Dim liste As Object
Dim Rgn As Range
With Sheets("Nom")
Worksheets("Liste").Range("B:B").Clear
Set liste = CreateObject("scripting.dictionary")
'1 que la liste créée vienne se coller en B2 et non pas en B1de la feuille Liste
For Each c In .Range("C2:C" & .Range("C" & Rows.Count).End(xlUp).Row)
liste(c.Value) = c.Value
Next c
Me.Range("B2:B" & liste.Count + 1) = Application.Transpose(liste.Keys)
Me.Range("B2:B" & liste.Count + 1).Sort key1:=Range("B2"), order1:=xlAscending, Header:=xlNo
Set liste = Nothing
'
'2 Créer une deuxième liste triée sans doublon qui vienne se coller en D2 de la feuille liste.
Worksheets("Liste").Range("D:D").Clear
Set liste = CreateObject("scripting.dictionary")
For Each c In .Range("B2:B" & .Range("B" & Rows.Count).End(xlUp).Row)
liste(c.Value) = c.Value
Next c
Me.Range("D2:D" & liste.Count + 1) = Application.Transpose(liste.Keys)
Me.Range("D2:D" & liste.Count + 1).Sort key1:=Range("D2"), order1:=xlAscending, Header:=xlNo
End With
End Sub