XL 2016 Trier certaines données sans doublons

dodineau

XLDnaute Occasionnel
Bonjour à toutes et tous.
J'utilise une macro du célèbre et regretté J. Boisgontier pour trier une série, en colnne A, sans doublon.
VB:
    Set Rng = Range("A1:A" & [A65000].End(xlUp).Row)
    tbl = Rng.Value
    Set d = CreateObject("scripting.dictionary")
    For i = 1 To UBound(tbl)
        d(tbl(i, 1)) = ""
    Next i
    
    Rng.ClearContents
    [A1].Resize(d.Count) = Application.Transpose(d.keys)
    Rng.Sort key1:=Range("A1"), Order1:=xlAscending, Header:=xlNo
Dans ma liste il y a des nombres et des mots, ce que je voudrais c'est trier sans doublons uniquement les nombres (Pas de mot).
Je n'arrive pas à trouver comment éliminer des entrées du dictionnaire avec la commande REMOVE ou autre.
Merci pour votre aide.
A+
 
Solution
Bonsoir Dodineau, bonsoir le forum,

Pas sûr d' avoir bien compris... Peut-être comme ça :

VB:
Set Rng = Range("A1:A" & [A65000].End(xlUp).Row)
tbl = Rng.Value
Set d = CreateObject("scripting.dictionary")
For i = 1 To UBound(tbl)
    If IsNumeric(tbl(i, 1)) Then d(tbl(i, 1)) = ""
Next i

Rng.ClearContents
[A1].Resize(d.Count) = Application.Transpose(d.keys)
Rng.Sort key1:=Range("A1"), Order1:=xlAscending, Header:=xlNo

Robert

XLDnaute Barbatruc
Bonsoir Dodineau, bonsoir le forum,

Pas sûr d' avoir bien compris... Peut-être comme ça :

VB:
Set Rng = Range("A1:A" & [A65000].End(xlUp).Row)
tbl = Rng.Value
Set d = CreateObject("scripting.dictionary")
For i = 1 To UBound(tbl)
    If IsNumeric(tbl(i, 1)) Then d(tbl(i, 1)) = ""
Next i

Rng.ClearContents
[A1].Resize(d.Count) = Application.Transpose(d.keys)
Rng.Sort key1:=Range("A1"), Order1:=xlAscending, Header:=xlNo
 

Discussions similaires

Réponses
12
Affichages
1 K

Statistiques des forums

Discussions
300 795
Messages
1 987 251
Membres
209 760
dernier inscrit
dedegallagher