名字在A1到A20,B1中输入:
=indirect("a"&int(rand()*20+1))
即可
每次按下F9,B1中即可随机产生一个名字,如果你有多个名字,类推就行啦,把公式中的20改成你的最大行数即可
思路:利用辅助列,使用随机函数rand()做出一列随机数,然后对随机数列进行排序,姓名列就会相应随机变化了,取前30名就可以。
如下图所示:
F2输入
=INDEX(A:A,SMALL(IF((C$2:C$100=H$2)*(B$2:B$100<>I$2),ROW($2:$100),4^8),RANDBETWEEN(1,COUNTIFS(C:C,H$2,B:B,"<>I$2"))))&""
回车并向下填充,按F9可更新数据。