Afficher un message
Vieux 12/03/2008, 19h33   #4 (permalink)
cafeine
XLDnaute Nouveau
 
Date d'inscription: mars 2008
Messages: 21
Par défaut 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
cafeine est déconnecté   Réponse avec citation