初学者写的,能达到要求,但是肯定不是最好的
Sub 按频率随机生成5个不同数值()
ar = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
For i = 1 To 20
Range("A" & i) = ar(i - 1)
Next i
For ii = 1 To 100
Range("B" & ii) = ar(Application.WorksheetFunction.RandBetween(0, 19))
Next ii
ActiveSheet.Range("$B$1:$B$100").RemoveDuplicates Columns:=1, Header:=xlNo
For iii = 1 To 5
c1 = c1 & " " & Range("b" & iii)
Next iii
a = MsgBox(c1, vbOKOnly, "5个随机数为:")
End Sub