纯粹使用EXCEL公式,是不可能的,用VBA编个自动生成程序倒还可以。如果不想用VBA的话,只能配合手工操作了。
如果想1至10的每个数字都出来的话,直接在A列填上1至10,然后再复制一次。凑足20个数了,然后在B列输入公式,=RAND(),将A列和B列选中,按B列排序。A列的顺序就乱了,1至10的每个数正好是出现两次啊。
还有一个办法,就是先在A列输入公式=INT(1+RAND()*10),向下拖至你需要的随机数的一半,产生了大约10个随机数之后,将这几个随机数选中,复制,在原位进行数值方式的选择性粘帖(目的是去掉公式),然后将重复的去掉,剩下的只保留能被20整除的个数,如保留4个、5个、或10个,然后将这几个数复制至20个,这样得出来的随机数肯定次数相同。然后在B列输入公式=RAND(),选中AB列,按B列排序,A列的随机数就乱序了,A列数据就是你想要的。
应该是0~9吧,EXCEL产生随机数很方便的
使用randperm命令,例如,randperm(10),产生了从1到10的随机数并将它赋值给t=trandperm(10)
t =
8 2 10 7 4 3 6 9 5 1
再使用一次将它赋值给b
b=randperm(10)
b=5 6 9 1 4 2 10 8 3 7
那么tb=[t,b];
tb里存放的就是从1到10 的随机数并且出现的次数一样