EXCEL自动随机不重复的函数,且不能等于指定数据,怎么做? 10

如图,比如我要给单位做一个抽奖号,假设是100名员工1-100随机一个数字给他们,在单元格L3,往下,怎么做函数呢?而且不能重复,并且,比如66号和88号被两个老板内定了... 如图,比如我要给单位做一个抽奖号,假设是100名员工1-100随机一个数字给他们,在单元格L3,往下,怎么做函数呢?而且不能重复,并且,比如66号和88号被两个老板内定了,这个L3往下的函数,要怎么样才能又不重复,又不等于上面老板两个号码呢?谢谢大神!!! 展开
 我来答
退休画线工
2020-04-17 · 知道合伙人软件行家
退休画线工
知道合伙人软件行家
采纳数:5411 获赞数:27015
1981年毕业于湖南大学,从事化工设计30多年,精于工程设计

向TA提问 私信TA
展开全部

应该不叫抽奖号,开始还被你这“抽奖号”带到坑里去了。

开始以为是:100个人有对应的编号1~100,加上截图也已有编号对应更加证实这样的理解。要从这100个编号中抽奖若干人,其中66号和88号已先指定。按这个理解编写完公式时,发现并没有说抽奖人数为多少,再重新来看,才貌似是要把100个人随机编号,其中有两个人指定为66和88号。随机编号与抽奖应该是两个不同的概念吧。所以最终也不能确定到底要按哪个方式来理解。

下面按给98个个随机编号来处理,将题主的数据格式稍做了调整,如图,J列为姓名,K列是自然顺序号,L列给出随机编号。其中J1、J2为两个幸运儿,由老板直接给了88号和66号。剩下98人要通过随机函数来编号。

因为随机函数是一个易失性函数,为了使已取得的编号固定下来,就要用到Excel的循环引用(这里是直接引用单元格本身),所以要先在选项的公式选项卡中将“启用迭代计算”打上对勾后确定,以启用迭代计算,从而实现循环引用。这里很重要

选择L4:L100,输入公式:

=IF(OR(L4=0,L4="",COUNTIF(L$4:L$101,L4)>1),CHOOSE(RANDBETWEEN(1,3),RANDBETWEEN(1,65),RANDBETWEEN(67,87),RANDBETWEEN(89,100)),L4)

按Ctrl+回车键,一次完成98个单元格中公式的输入。

可能要稍候一会,L列的数据不再变化时,得到不重复的结果,并把编号固定下来。因为随机函数产生的随机数是按均布来生成的,公式中,1~65占了98个数字中的绝大部分,而前面用来指定用哪个随机函数公式的范围的随机数RANDBETWEEN(1,3)生成1~3是基本均匀的。所以会反复多次才能满足COUNTIF不大于1的条件。如果数据分布更偏,且数据巨大的话,就要对公式做进一步的处理才行。

图中的L列设置了条件格式,如果有重复数据就显示填充背景,现在没有看到填充背景,那么说明没有重复数字。

增加悬赏吧,本问题公式并不复杂,但解决问题的思路应该远不止只值区区10个悬赏币,即使10叨也值啊!呵呵。

更多追问追答
追问

“启用迭代计算”我这里怎么找不到?在哪里打开?谢谢!

追答
你这是WPS?
Excel的在文件菜单中,你自己找找看。
lengfengfly
2020-04-17 · TA获得超过2380个赞
知道小有建树答主
回答量:2115
采纳率:63%
帮助的人:698万
展开全部

似乎原来有位大神解过类似的题,但是找不到了。下面的方法是否能满足要求呢:

如果数据在A列,那么在在B列输入“=rand()”,产生随机数,按B列排序,扩展到A列。

排序前

排序后

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式