Excel如何实现给名单里的每个人随机编号

2024-12-19 10:30:40
推荐回答(4个)
回答1:

假设你的名字数据源在A2:A81中,B2中输入
=RAND()
用自动填充柄下拉到B81,将在此区域内出现0到1之间的不重复数据。
假设你要生成的数据放在D2:G21之间,在D2中输入
=OFFSET($A$1,MATCH(LARGE($B$2:$B$81,ROW(A1)+(COLUMN(A1)-1)*20),$B$2:$B$81,),,,)
将此公式用自动填充柄向右复制到G2,向下复制到G21,就会在此区域内出现你要的名字了,不断按下F9,就可以不断刷新数据,如果要保存下来,选定此区域名字,到别处选择性粘贴,数值选项勾选就可以了。

回答2:

就用随机函数。
1、假设80个人的名单在A列,就在B1输入=INT(RAND()*79+1)回车并向下填充。
2、选B列——复制——原地不动——右键——选择性粘贴——数值——确定。
3、选B列任一单元格——工具栏——升序(或降序)排序。
4、这样名单顺序就打乱了,按1~20、21~40、31~60、41~80就可以分成四组。

回答3:

=MOD(ROUND(10*RAND(),0),4)+1

在前面或后面一列里面打入上面的公式。拉一下。编号一样的就成一组。
这个方法分的组,可能人员数不是均分的。。

回答4:

如果A列里是名单,你在B1中输入 =rand(),然后下拉填充,得到80个随机数。在C1中输入 =RANK(B1,$B$1:$B$80),然后下拉填充,就可以得到这80个数的各自的排位,也就是你所要的随机编号。

一般情况下是没有重复的,偶尔还是会有重复,只要你排序下看看有没有重复的,做个微小的调整就可以了。