Merci scuny,
Alors j ai bien suivi tes instructions mais j ai une erreur à la compilation avec: End Sub
voila comment j'ai écrit ton code, une erreur de ma part ?
Private Function GeneratePassword(ByVal PasswordLenght As Byte) As String
Dim b As Byte
Dim i As Byte
Dim i2 As Byte
Dim s As String
Dim Password As String
Randomize
For i = 1 To PasswordLenght
i2 = Int((6 - 2 + 1) * Rnd + 2)
If i2 = 4 Then 'genere une lettre majuscule
b = CByte((90 - 65 + 1) * Rnd + 65)
s = Chr(b)
ElseIf i2 = 3 Then ' genere un chiffre
b = CByte((57 - 48 + 1) * Rnd + 48)
s = Chr(b)
Else ' genere une lettre minuscule
b = CByte((122 - 97 + 1) * Rnd + 97)
s = Chr(b)
End If
Password = Password & s
Next i
Dim VerifText As Boolean
Dim verifNb As Boolean
Dim Ctrl
Dim PasswordModif As String
a = Len(ValPassword) '*1 (valpassword devient password) connaitre la longueur du password
For i = 1 To a 'faire un boucle sur chaque élément du password
Ctrl = Mid(ValPassword, i, 1) ' *1 (valpassword devient password) décomposé le password
Verif = Ctrl Like "[a-z]" 'verifie l'appartenance a la plage a - z
verifNb = Ctrl Like "#" 'verifie l'appartenance a la plage 0 - 9
If Verif = False And verifNb = False Then 'verifier le resultat
Ctrl = Replace(Ctrl, Ctrl, "A") 'pour remplacer les charactères non voulues (ici par A)
End If
PasswordModif = PasswordModif & Ctrl 'pour reconstituer le password
Next
GeneratePassword = PasswordModif
End Sub
End Function
Si je sdupprime End Sub pas d'erreur mais j'ai un #NAME comme résultat
Merci pour le coup de main