如何实现excel的随机分配 excel如何实现分组随机抽奖

经验直达:

  • excel如何实现分组随机抽奖
  • 如何实现excel的随机分配

一、excel如何实现分组随机抽奖


假设A列为部门 B列为姓名,5个部门随机抽取8个人,每个部门至少有一个人
添加辅助列C列,公式为=rand()即在C列生成随机数
抽取公式为=LET(a,REDUCE("姓名",C2:C32,LAMBDA(x,y,IF(y=MAX(FILTER(C2:C32,A2:A32=OFFSET(y,,-2))),VSTACK(x,OFFSET(y,,-1)),x))),VSTACK(a,TAKE(SORTBY(FILTER(B2:B32,ISNA(MATCH(B2:B32,a,))),RANDARRAY(26)),3)))
【如何实现excel的随机分配 excel如何实现分组随机抽奖】思路为:先抽取每部门分数最高的成员,这样可以保证每部门先有一个名额 。然后除去刚抽取的5个人,将其余人做随机排列,再取排列后的前3名 。
由于C列值为随机数,抽取后3人时又做了随机排列,所以每次刷新时会保证抽取随机的8个不重复人员
如何实现excel的随机分配 excel如何实现分组随机抽奖



二、如何实现excel的随机分配


1.在原始表格中如图位置插入4列一行
如何实现excel的随机分配 excel如何实现分组随机抽奖

2.第一列重复值(计算第一列重复的个数:countif函数)、第一列编号(将第一列分组:if函数)、空白辅助列(将第二列编号:if函数)、第二列分组编号(既有分组也有编号:用“&”实现) 。
如何实现excel的随机分配 excel如何实现分组随机抽奖

3.在目标表中第二列前插入一列分组编号(=VLOOKUP(第一列分组)&RANDBETWEEN(1,VLOOKUP(第一列重复值)))
如何实现excel的随机分配 excel如何实现分组随机抽奖

4.在目标表中第二列中以分组编号为首列,直接VLOOKUP(以分组编号为首列)
如何实现excel的随机分配 excel如何实现分组随机抽奖

5.将目标单元格数值化
如何实现excel的随机分配 excel如何实现分组随机抽奖

6.完成,实现了随机分配
如何实现excel的随机分配 excel如何实现分组随机抽奖


相关经验推荐