Code PIN aléatoire, sans chiffre répété

Grazu

XLDnaute Nouveau
Bonjour,

j'ai un peu honte de faire appel à vous, mais je ne m'en sors vraiment pas.

J'ai besoin (régulièrement) de générer une centaine de codes PIN aléatoires (sans doublon) et surtout sans répétition de chiffre.
Ex: 1284, 2506 sont OK
mais pas 1281 où le 1 est présent deux fois, ni 2505 (le 5 pose problème).

J'ai cherché avec la fonction ALEA mais je suis obligé de modifier tous les chiffres "répétés" au sein du même code PIN.

J'espère avoir été clair et surtout pouvoir obtenir une aide de votre part, ce dont je vous remercie par avance. :eek:
 

cafeine

XLDnaute Nouveau
Re : Code PIN aléatoire, sans chiffre répété

Hello,

voici une proposition.
je passe en argument les codes générés précédemment ... attention au bout d'un certain nombre de codes ça commence à ramer
sinon on peut faire une fonction "passive" qui génére des codes et ensuite mettre une colonne qui teste NB.SI() ensuite en filtrant sur les NB.SI()=1 tu auras une bonne liste de code.
Code:
Function GenCode(ByVal r As Range) As String

Dim strValues As String
Dim currCode As String
Dim newCar As String
Dim c As Range

For Each c In r.Cells
    strValues = strValues & "-" & c.Value
Next c
strValues = Mid(strValues, 2)

anotherCode:
Randomize
Do While Len(currCode) < 4
    newCar = Int(Rnd() * 10)
    If InStr(currCode, newCar) = 0 Then
        currCode = currCode & newCar
    End If
Loop

If InStr(strValues, currCode) Then GoTo anotherCode

GenCode = currCode

Set c = Nothing

End Function
 

JCGL

XLDnaute Barbatruc
Re : Code PIN aléatoire, sans chiffre répété

Re,
Salut Caféine,

C'est vrai, c'est pourquoi j'ai rajouté une MeFC.
Il reste que c'est un joli code qui, à l'origine, est fait pour générer des Mots de Passe (alpha et/ou numérique).

A+
 

Grazu

XLDnaute Nouveau
Re : Code PIN aléatoire, sans chiffre répété

Magnifique, Messieus je vous remercie :
1/ de votre amabilité
2/ de la rapidité de vos réponses
3/ de la qualité de celles-ci

Si je peux me permettre, j'ai testé plusieurs fois le programme, et remarqué que les codes PIN pouvaient commencer par un 0, ce qui m'est interdit, et ce que j'ai omis de préciser au préalable, veuillez m'en excuser.
Etant donné ma nullitude (?), je ne sais pas quoi modifier pour éviter çà.

Merci encore à tous !
 

JCGL

XLDnaute Barbatruc
Re : Code PIN aléatoire, sans chiffre répété

Re,
Oups, j'avais oublié : Bienvenue à Grazu :),

Tu appliques un filtre (commence par 0) et tu supprimes les lignes.

Un conseil, si je puis me permettre, ne pas chercher à faire une usine à gaz...

Le fichier de mon ami PJ :) avec le filtre mis en place.

A+
 
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Code PIN aléatoire, sans chiffre répété

Re

Une version sans 0 en debut de code
et qui donne le bon nombre de codes (c'est seulement pour cela que j'ai repris celui de mon ami JC :) :))
 

Pièces jointes

  • Generation_Code_Pin_sans_Oxxx1.zip
    11.3 KB · Affichages: 455
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 857
Messages
2 092 869
Membres
105 545
dernier inscrit
pourmanger