가정 당신의 이름은 범위 A2에, 당신은 ... 이런 식으로 뭔가를 시도 할 수 B51
Sub getRandomNumbers(ByVal Rng As Range, ByVal bottomNum As Integer, topNum As Integer)
Dim i As Long, Num As Integer
Rng.Cells.Clear
For i = 1 To Rng.Cells.Count
Num = Application.RandBetween(bottomNum, topNum)
Do While Application.CountIf(Rng, Num) = 2
Num = Application.RandBetween(bottomNum, topNum)
Loop
Rng.Cells(i) = Num
Next i
End Sub
당신은 표준 모듈에 위의 절차가 제공, 당신은 ... 대상 범위, 바닥 번호와 아래처럼 그것을 가기 숫자 매개 변수를 전달 후를 호출 할 수
Sub AssignRandomNumbers()
getRandomNumbers Range("B2:B51"), 1, 25
End Sub
는 번호는 1, 25에있을 것입니다 열 D에 입력 할 nd = 1 내지 25 (즉, 1 내지 25)이다. 하나의 세트가 아닌 1-25 개의 세트 2 세트) 그러나 이것 이외에는 이것이 최선의 방법이라고 생각합니다. – YowE3K
x와 y가 양의 정수라고 가정하면 RANDBETWEEN (x, y)의 등가는 실제로 '= INT (RAND() * (y-x + 1)) + x'입니다. –