Office 365 [RESOLU] Remplacer un texte par un nombre

ivan27

XLDnaute Occasionnel
Bonsoir le forum,

J'ai fait quelques recherches sans trouver de solution.
J'ai une liste de mots dans une colonne et je souhaite donner une valeur à 2 chiffres à chaque mot, en partant de 10.
Merci d'avance pour votre aide.
Réponse en VBA s'il vous plaît
Bonne fin de soirée

Ivan
 

Fichiers joints

mapomme

XLDnaute Barbatruc
Supporter XLD
Re,

Avec une macro dans le module de Feuil1:
VB:
Sub numero()
Const Depart = 10
Dim t, dico As New Dictionary, i&, max&
  dico.CompareMode = TextCompare: max = Depart - 1
  t = Range("a1:b" & Cells(Rows.Count, "a").End(xlUp).Row)
  For i = 1 To UBound(t)
    If Not dico.Exists(CStr(t(i, 1))) Then max = max + 1: dico(CStr(t(i, 1))) = max
    t(i, 1) = dico(CStr(t(i, 1)))
  Next i
  Range("b:b").ClearContents: Range("b1").Resize(UBound(t)) = t
End Sub
 

Fichiers joints

Dernière édition:

ivan27

XLDnaute Occasionnel
Bonjour le forum,
Mapomme, merci beaucoup pour votre proposition qui fonctionne parfaitement sur mon classeur de production.
Bien cordialement et excellente journée
Ivan
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas