Sub Test_RandomNumberLetters()
MsgBox RandomNumberLetters(6)
MsgBox RandomNumberLetters(6, False)
End Sub
Function RandomNumberLetters(NumberOfDigits As Integer, Optional CaseSensitive As Boolean = True) As String
Dim i As Integer, j As Integer, ss As String, s As String
For i = 1 To NumberOfDigits
j = RBetween(1, 36)
s = Chr(j + 64)
If j > 26 Then
s = CStr(j - 27)
End If
If CaseSensitive = True And j < 27 Then
If (RBetween(1, 2) > 1) Then s = Chr(j + 96)
End If
ss = ss & s
Next i
RandomNumberLetters = ss
End Function
Function RBetween(lowerbound As Long, upperbound As Long) As Long
RBetween = WorksheetFunction.Floor((upperbound - lowerbound + 1) * Rnd + lowerbound, 1)
End Function
Bookmarks