1
这个随机数发生器工作得很好,但随机序列不是Unique
使随机数发生器创建独特的序列
我需要的所有序列是unique
有人可以看到如何做到这一点
感谢
Sub RanSerialGenerator()
Dim rng As Range
Dim LastRow As Long
With Sheets(')
LastRow = .Range("C" & .Rows.Count).End(xlUp).Row
End With
Range("A1").FormulaR1C1 = "Header Name"
Range("A2", Range("A2").End(xlDown)).Clear
For Each rng In Sheets(1).Range("E2:E" & LastRow)
rng.Value = Pwd(rng.Value)
Next
End Sub
Function Pwd(ByVal strTemp As String) As String
Dim i As Integer, iTemp As Integer, bOK As Boolean, iLength As Integer
'48-57 = 0 To 9, 65-90 = A To Z, 97-122 = a To z
'amend For other characters If required
'Set the # of characters
For i = 1 To 3
Do
' Initialize the seed using Timer.
Randomize (Timer)
iTemp = Int((122 - 48 + 1) * Rnd + 48)
Select Case iTemp
Case 65 To 90, 97 To 122: bOK = True
Case Else: bOK = False
End Select
Loop Until bOK = True
bOK = False
strTemp = strTemp & Chr(iTemp)
Next i
Pwd = strTemp
End Function
在你的列表中使用Find()来检查你刚刚得到的值:如果你找到它,那么再次调用Pwd()。 –
谢谢蒂姆,我会尝试这个 – xyz