跪求用EXCEL把01-65随机排列的方法啊!!急!!

如题所述

.随机不重复数字序列的生成方法一  有些情形下,我们需要生成一个不重复的随机序列。
  比如:我们要模拟洗牌,将一副扑克牌去掉大小怪后剩下的52张打乱。
我们来看看在worksheet里面如何利用内置函数实现这个功能。
  (1)在A1-A52间填入"=INT(RAND()*52)+1",产生1-52间的随机数,注意这里是有重复的
  (2)在B1-B52间填入1-52
  (3)在C54-BB54填入1-52
  (4)在C1填入"=IF(ROW()=C$54,INDEX(B$1:B$52,INDEX($A$1:$A$52,C$54)),IF(ROW()=INDEX($A$1:$A$52,C$54),INDEX(B$1:B$52,C$54),B1))"。
  分项解释:
  a:ROW()=C$54,如果当前行等于当前交换所排的序号
  b:INDEX(B$1:B$52,INDEX($A$1:$A$52,C$54)),返回在B1到B52中选择A1:A52中的第C54个值
  c:IF(ROW()=INDEX($A$1:$A$52,C$54),否则的话,如果当前行等于A1:A52中第C54个值,则:
  d:INDEX(B$1:B$52,C$54),返回B1:B52中的第C54个值
  e:若以上条件都不满足,则返回B1
  (5)将C1复制到C1:BA52这个区域里面
  (6)在BA1:BA52中,我们就得到了一个不重复的随机序列,按F9可以生成一个新序列。
  随机产生六位数字密码=INT(RAND()*(899999-10001))+100001
  EXCEL生成前2位是大写字母,中间4位是小写字母,后两位是数字
  =CHAR(65+INT(RAND()*16))&CHAR(65+INT(RAND()*16))&CHAR(97+INT(RAND()*16))&CHAR(97+INT(RAND()*16))&CHAR(97+INT(RAND()*16))&CHAR(97+INT(RAND()*16))&INT(RAND()*10)&INT(RAND()*10)

你看懂没,反正我是没看懂,但这确实就是方法。

参考资料:http://baike.baidu.com/view/3048977.htm

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-09-18
在A列的A1:A65输入01-65,在B1输入
=RAND()
将B1的公式填充至B65,以B列排序,则A列的01-65就成了随机排列了。本回答被网友采纳
第2个回答  2012-09-18
选中需要填充不同随机数的区域,执行宏:
Sub GetRand2()
Selection.ClearContents
ct = Selection.Count - 1
For Each a In Selection
v = Round(ct * Rnd(), 0) + 1
While Check(v)
v = Round(ct * Rnd(), 0) + 1
Wend
a.Value = v
Next
End Sub
Function Check(v)
Check = False
For Each a In Selection
If a.Value = v Then Check = True
Next
End Function
第3个回答  2012-09-18
随便找个单元格输入公式 =RANDBETWEEN(1,65)
下拉即可,随机数在1至65之间
第4个回答  2012-09-18
输入01-02后选中在右下角光标变成黑十字往你所走的方向拉就可以了!

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网