如何用EXCEl VBA生成随机整数(可以重复) 5

如果我们要用VBA生成一列不重复的随机整数,可以用下面的VBA代码。本例可以在A1:A100中产生1-100的不重复随机整数。SubRndNumberNoRepeat()... 如果我们要用VBA生成一列不重复的随机整数,可以用下面的VBA代码。本例可以在A1:A100中产生1-100的不重复随机整数。

Sub RndNumberNoRepeat()
Dim TempArr1(99) As Integer, TempArr2(0 To 99, 1 To 1) As Integer
Dim RndNumber As Integer, i As Integer
Randomize (Timer) '初始化随机数生成器
For i = 0 To 99 '产生包含1-100的不重复的随机数列
TempArr1(i) = i
Next i
For i = 99 To 0 Step -1
RndNumber = Int(i * Rnd)
TempArr2(99 - i, 1) = TempArr1(RndNumber) + 1
TempArr1(RndNumber) = TempArr1(i)
Next i
'在A1:A100中输入这些数字
Range("a1:a100").Value = TempArr2
End Sub

这个代码怎么才能改成能够在A1:C10单元格中生成50-60之间的整数(可以重复)
展开
 我来答
花开烂漫招蜂943
2019-05-16 · TA获得超过3231个赞
知道大有可为答主
回答量:7193
采纳率:76%
帮助的人:703万
展开全部


VBA生成随机数的函数是rnd,生成的是0到1之间的随机数。如果想生成50到100之间的随机数,可以用以下公式:

Sub Button1_Click()
Dim a
a = Int(Rnd * 50) + 50
End Sub

注解:

rnd*50可生成0到50之间的随机数,用int取整数(根据题主的表述,我认为你是只需要整数的),然后再加上50,就是50到100之间的随机整数了。




推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式