Code aléatoire Alpha-numérique sans doublon

renealmir@gmail.com

XLDnaute Nouveau
Bonsoir, le forum.

Voila, j'ai besoins pour l'impression d’étiquettes de créer une liste de code aléatoire alpha-numérique sans doublon avec certains critères.

Je dois pouvoir déterminer le premier et deuxième chiffre du code et ainsi que ça longueur.
Les codes crée de la colonne A doivent être recopier dans la colonne B et de même pour la colonne C en D.
Les codes deja utiliser ne peuvent plus être réutiliser ultérieurement.

Merci de votre aide.

René.
 

Pièces jointes

  • codes pour étiquettes v1.xls
    39.5 KB · Affichages: 32

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Code aléatoire Alpha-numérique sans doublon

Bonsoir renealmir@gmail.com et bienvenue sur XLD :),

Un essai dans le fichier joint.
VB:
Option Explicit
Const Plage = "A1:A11,C1:C11"
Const carac = "0123456789ABCDEFGHJKLMNPQRSTUVWXYZ"

Sub Aleatoire()
Dim xrg As Range, cel As Range, x
Dim an, op, tail, i&, max&, total&, prefix, dico

  Application.ScreenUpdating = False
  Set xrg = Range(Plage): total = xrg.Count
  an = [g1]: op = [g2]: tail = [g3]
  max = Len(carac): prefix = an & op
  Set dico = CreateObject("scripting.dictionary")

  Randomize
  Do
    x = prefix
    For i = 3 To tail
      x = x & Mid(carac, 1 + (Int((Rnd * 1000000)) Mod max), 1)
    Next i
    dico(x) = ""
  Loop Until dico.Count = total

  On Error Resume Next
  For Each cel In xrg
    If cel <> "" Then dico.Remove cel.Value
  Next cel
  On Error GoTo 0

  For Each cel In xrg
    If cel = "" Then
      x = dico.keys()(0): cel = x: cel.Offset(, 1) = x: dico.Remove x
    End If
  Next cel
  MsgBox "Terminé!"
End Sub
 

Pièces jointes

  • renealmir@gmail.com-codes pour étiquettes- v1.xlsm
    21.6 KB · Affichages: 19

renealmir@gmail.com

XLDnaute Nouveau
Re : Code aléatoire Alpha-numérique sans doublon

Bonsoir et merci mapomme pour ton aide.

Je viens de regarder le fichier et cela est superbe, mais comment faire pour garder les codes deja crée pour qu'ils ne soit plus réutilise ultérieurement.

Aussi si je clique à nouveau sur le bouton je ne peut pas créer une nouvelle liste!
Car je doit imprimer pleins des listes de codes.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Code aléatoire Alpha-numérique sans doublon

re,

Bonsoir et merci mapomme pour ton aide.

Je viens de regarder le fichier et cela est superbe, mais comment faire pour garder les codes deja crée pour qu'ils ne soit plus réutilise ultérieurement.

Aussi si je clique à nouveau sur le bouton je ne peut pas créer une nouvelle liste!
Car je doit imprimer pleins des listes de codes.

C'est bien parce que j'avais compris qu'un code déjà tiré ne devait pas être réutilisé qu'un deuxième clique ne produit rien. Mais, si après avoir créé une première liste, on redéfinit la plage en augmentant le nombre de ligne (on passe de 11 à 22), la macro complète la liste avec 22 autres valeurs distinctes des 22 premières.

Pour répondre strictement à la demande, il va falloir modifier profondément la macro et garder en mémoire (feuille cachée par exemple) les codes déjà sortis. Cela demande un peu de réflexion.
 
Dernière édition:

renealmir@gmail.com

XLDnaute Nouveau
Re : Code aléatoire Alpha-numérique sans doublon

re,



C'est bien parce que j'avais compris qu'un code déjà tiré ne devait pas être réutilisé qu'un deuxième clique ne produit rien. Mais, si après avoir créé une première liste, on redéfinit la plage en augmentant le nombre de ligne (on passe de 11 à 22), la macro continue la liste avec 22 autres valeurs distinctes des 22 premières.

Pour répondre strictement à la demande, il va falloir modifier profondément la macro et garder en mémoire (feuille cachée par exemple) les codes déjà sortis. Cela demande un peu de réflexion.

Le problème en crean une liste plus amples je vais avoir des problèmes pour les impression!!!

Ta deuxième solution et la mieux... mais plus compliqué (pas besoins que la feuille soit caché.

Bonne nuit et merci de ta précieuse aide.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Code aléatoire Alpha-numérique sans doublon

Re,

Le problème en créant une liste plus amples je vais avoir des problèmes pour les impression!!!

Ta deuxième solution et la mieux... mais plus compliqué (pas besoins que la feuille soit caché.

Bonne nuit et merci de ta précieuse aide.


Un essai dans le fichier joint (finalement le code a été complété sans trop de modif.). Vérifier quand même les résultats :rolleyes:
 

Pièces jointes

  • renealmir@gmail.com-codes pour étiquettes- v2.xlsm
    27.4 KB · Affichages: 35

Discussions similaires

Réponses
2
Affichages
429

Statistiques des forums

Discussions
312 305
Messages
2 087 089
Membres
103 464
dernier inscrit
Inconnu2