Excel VBA在a列生成不重复的随机数

Excel VBA在a列生成不重复的随机数

今天要和大家分享的是:Excel VBA在a列生成不重复的随机数?

首先打开数据表格,然后按alt+f11快捷键,打开VBA代码界面,如下图所示:

插入模块,如下图所示:

然后在新的模块里输入如下代码:

Sub 在A列产生不重复随机数()

Randomize Timer

Dim c(100) As Byte

For i = 1 To 100 '产生100个随机数

c(i) = i

Next

k = 100

Do While l < 100

r = Int(Rnd() * k) + 1 '随机数的范围

aa = c(r)

c(r) = c(k)

c(k) = aa

k = k - 1

l = l + 1

Cells(l, 1) = aa

Loop

End Sub,如下图所示:

回到excel界面快捷键alt+f8打开宏执行对话框,如下图所示:

找到对应的命令,单击执行按钮,如下图所示:

即可看到输出结果,如下图所示: