EXCEL怎么按特定的概率在一堆数字中随机抽取不重复的值,

2025-04-09 16:18:28
推荐回答(1个)
回答1:

初学者写的,能达到要求,但是肯定不是最好的
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