Как сгенерировать массив случайных и неповторяющихся чисел?

Для того, чтобы получить массив, содержащий случайные, но неповторяющиеся числа, можно использовать нижеприведённую процедуру. Обратите внимание на то, что в данном примере генерируются целые числа от Min = 1 до Max = 1000, а количество элементов массива = 100.

code: #vba
Private Sub GetArrayUniqueRandom()
    Dim iRndUnique(1 To 100) As Long
    Dim iCount As Long, iRnd As Long
    For iCount = 1 To 100 'UBound(iRndUnique)
        Do
             iRnd = Int(Rnd * 1000) + 1
        Loop While IsNumeric(Application.Match(iRnd, iRndUnique, 0))
        iRndUnique(iCount) = iRnd
    Next
End Sub
Поделиться:

Похожие статьи: