Have you ever need to generate a random password but were unsure of what type
of logic to use to ensure it was truely random. Your problems are now
solved. Use the two functions below. Simply Make a Call To CreateAPw and
Pass in the Number of characters that your Password should be. It will return
a string of that many characters.
Function CreateAPw(iNumChars as integer) As String
dim x as integer
dim newPw as string
dim pwChar as string
'Generate a 6 Character Password
pwChar = ""
newPw = ""
For x = 1 To iNumChars
pwChar = GetAChar()
newPw = newPw & pwChar
CreateAPw = newPw
Function GetAChar As String
Dim num As Single
dim done as Variant
done = False
Do Until Done
num = Rnd 'Generate a number between 0 and 1
num = num * (10 ^2) 'Make the number 2 digits
If (Round(num, 0) >=10 And Round(num, 0) <= 12) Then 'If the number is
between 10 and 12 then make it three digits. We want to capture the characters
between 100 and 122
num = num * 10 'Make the number three digits
num = Round(num, 0) 'Make the number a whole number
If (num >= 65 And num <=90) Or (num >= 97 And num <= 122) Then 'Ensure that
it is a alpha character
GetAChar = Chr$(num) '
done = True
This was first published in November 2000