VBA 自动刷新产生随机数0~1之间5000个,再自动复制粘贴?

VBA 自动刷新产生随机数0~1之间5000个,再自动复制粘贴?,第1张

=A1+(RAND()001+007)(-1)^INT(RAND()10)

在b1

生成a1

差值在007和008之间的随机数

你可以随意调整001

和007

只要他们相加等于008即可

vba的话把rand换成rnd

你的代码不会大于008的,你看看是不是别的地方代码有问题吧

要求中有两个问题,

1个函数产生一个结果,第2次用函数产生另一结果,但不能保证多组结果的合格率不相同。除非一次性返回多个组结果。

1个函数返回的结果一定是在你输入的单元格或者连续区域,不能由你选择。

例如你在A1输入函数,要在C3返回结果,那是不可能的。

其实不用VBA也能实现。步骤如下:

在A列[A1:A100]的单元格内顺序输入1-100,然后在B列对应单元格内输入=rand(),生成100个随机数;

对B列进行排序,升序降序都行(注意:要选扩展选定区域,执行排序)。

执行完排序后,100个数字就被随机打乱了

第1-50行可以分为1组(其中前70%,也即前35个编号可以分配治疗方案A,其余15个编号是方案B);

第51-100行可以分为2组(其中前40%,也即前20个编号可以分配治疗方案A,其余30个编号是方案B)

1、VBA方法

如下宏可在光标位置生成随机数1-10之间的随机数。

Sub Rand()

  SelectionTypeText 1 +Int(Rnd()  9)

  SelectionTypeParagraph

End Sub

2、Excel中生成复制

采用excel中生成后复制粘贴word的方法。

excel生成随机数的函数基本上有两个:

rand()a+b,生成范围为b-a到b+a。

randbetween(a,b),要求a,b为整数,可生成范围为a到b之间的整数。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/12177590.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存