2022-11-12 09:29来源:m.sf1369.com作者:宇宇
excel 如何随机抽取数据的解决方法如下:
1、首先把4000个单词全部放到A列去(这样做的话好写公式),2、B1输入=RAND() ;C1输入 =RANK(B1,$B$1:$B$4000) 选择B1 C1 公式往下拉到4000,3、这个时候C列的数就是1~4000,没有重复 按照这个 来制作表的话不会重复,直接用随机函数会出现重复的情况。
1、电脑打开Excel表格,要在A列中随机抽取一组数据,
2、在C列中输入公式=INDIRECT("a"&RANDBETWEEN(1,10)),
3、输入公式后,回车后,就会随机生成一个数据,
4、下拉复制公式,就会随机生成其他数据,
5、A列中更改数据,C列中的公式也会随机改变数据,
用以下方法,Excel 制作抽奖和抽班委原理一样的
我用的版本是 Excel 2016,其他版本的界面可能略有不同。
案例 1:如何从 10 个人中一次性抽取 3 名获奖者,且所有中奖者不重复?
案例 2:如何从 10 个人中依次抽取 1、2、3 等奖各 1 名,每次抽取后固定住获奖者,且所有中奖者不重复?
所需函数及功能:
RAND()
RANK(number, ref, [order])
INDEX(array, row_num,[column_num])
IF(logical_test,[value_if_true],[value_if_false])
Conditional Formatting
为了便于理解,我把每个步骤拆开来讲解。
案例 1 解决方案:
以下是 10 个人员的名单,现在需要从中一次性抽 3 个幸运儿。
1. 在 B 列用 Rand 函数生成 10 个随机数
2. 在 C 列用 Rank 函数对这 10 个随机数排序
公式:=RANK(B2,B$2:B$11)
翻译:计算 B2 单元格在 B2~B11 数组中的排名,默认从大到小排。
3. 在 D 列用 Index 函数按 C 列的随机排名抽出中奖者。因为需要一次抽 3 个人,所以我们拉 3 行公式即可。
公式:=INDEX(A$2:A$11,C2)
翻译:在A列的指定数组中,读取出第 n 行单元格
使用方法 :
按住 F9,数字开始滚动,抽奖开始
放开按键,即为抽奖结果(因为 rand 函数基本不可能出现重复值,所以中奖人不会重复)
* 请注意:由于随机函数每次都会随机变化,为了固定住获奖人员名单,请复制获胜者名单,并且 paste value 到其他单元格。
案例 2 解决方案:
增加的需求:
每次抽一个人,抽出后固定中奖者
不得重复中奖
1. 给 D 的公式加个 if 条件,同时增加辅助列 E
公式:=IF(E2=1,D2,INDEX(A$2:A$11,C2))
翻译:如果 E2 单元格为 1,则固定 D2 单元格的值,否则,继续抽奖
当我们在 E2 中输入“1”以后,无论何时按下或放开 F9 抽奖,D2 的“王7”始终是固定的。
现在我们要抽第 2 个人,但是“王7”不可以重复中奖,怎么做?
在不使用 vba 的情况下,此处推荐一种最简便的方法。
2. 选中 D2~D11 --> 按 Ctrl + Q --> 选择 Formatting --> Duplicate Values
翻译:当“中奖者”区域内有重复人员,则高亮显示
如下,当我们抽第 2 个人的时候,又抽到了“王7”,会自动高亮显示。
3. 现在抽奖器已经做好了,我们把模板调整美观,再写个操作说明。
1) 把人员名单及辅助列移到“人员名单”sheet 中
2) 选中 E 列,通过 Format Cells --> Custom,把“1”显示为“已中奖”
这就是最终的抽奖模板和使用说明,有时间的话,可以加点图片效果什么的,然后就可以在公司年会耍酷啦!
使用说明:
1、将参加抽奖的人员名单,维护在“人员名单”表里面
2、按住 F9 开始抽奖(此时可以看到B列内容一直在变化)
3、一会功夫,放手,B 列此时就是被选出来的“中奖人”
4、在 C 列的第一个黄色单元格输入“1”,以便把“中奖人”锁定
5、重复 2~4 步骤抽二等奖(如果B列出现红色背景,则重复 2~3 步骤)
6、以此类推,抽出三等奖
A2数组公式,输入后不要直接回车,要按三键 CTRL+SHIFT+回车 下拉。
=SMALL(IF(COUNTIF(A$1:A1,10-ROW($1:$10))=0,10-ROW($1:$10)),INT(RAND()*(10-ROW(A1)))+1)
或者用这公式也行:(此公式输入后直接回车即可,无需按三键)
=SMALL(IF(COUNTIF(A$1:A1,{0;1;2;3;4;5;6;7;8;9})=0,{0;1;2;3;4;5;6;7;8;9}),INT(RAND()*(10-ROW(A1)))+1)
Excel表格随机提取数据方法如下
1.首先打开需要处理的表格,并在表格前插入两列辅助列。
2.在A列上方的小框中输入A2:A953即可选中A整列。
3.输入=RAND()并同时按下Ctrl+enter键即可快速输入随机数。
4.在B2单元格输入=RANK(A2,A:A)并按enter键。
1、电脑打开Excel表格,要在A列中随机抽取一组数据,如下图所示;
2、在C列中输入公式=INDIRECT("a"&RANDBETWEEN(1,10)),如下图所示;
3、输入公式后,回车后,就会随机生成一个数据,如下图所示;
4、下拉复制公式,就会随机生成其他数据,如下图所示;
5、A列中更改数据,C列中的公式也会随机改变数据,如下图所示。
1. 新建一个工作表,按住Ctrl不放,分别单击A1和C1,将其选中,在其右键菜单中选择“设置单元格格式”,单击“数字”选项卡,选择“数值”,将“小数位数”右边的数字缩小为“0”后,单击[确定]按钮。
2. 分别在单元格A1中输入公式“=rand()*20”,B1中输入“+”,C1中输入公式“=rand()*(20-A1)”,D1中输入“=”。
3. 选中A1:D1,向下拖动其右下角的填充柄至D25,一列20以内的随机加法题就完成了。
4. 选中单元格A1:D25,将选定区域“复制”,在单元格F1位置“粘贴”,即可完成多列随机出题。
5. 若要重新生成随机题,只需拖动任意一个空白单元格右下角的填充柄即可。
Excel随机数生成
1、首先,我们得弄清楚随机数是怎么生成的,开始,在桌面上面建立一个用随机数命名的Excel表格,点击进入。
2、进入表格之后,我们点击“ 执行-插入-函数 ”进入函数表格,也可以点击二类菜单栏上面的E,点击“ 出现弹窗-其他函数
3、进入函数表格之后,我们为了快速搜索,在搜索函数栏下面输入“rand”点击右侧转到,这个时候,函数就会转到rand公式上面。
4、之后,点击确定,进入之后,点击enter回车,会出现一个随机函数,由于没有进行其他设置所以随机函数的范围在0-1之间。
如何给随机函数设置范围
1、范围设置是随机数设置里面一项非常重要的技能,我们可以举例A+rand()*(B-C)这里代表的含义就是B是该随机数范围内的最大值,C是该随机数范围内的最小值,(B-C)表示随机数范围为(0,B-C),如果加上A这个范围加数就说明范围是(A,A+B-C)
2、来举一个例子,A+rand()*(B-C)用30+rand()*(60-40)说明随机数的范围是(30,50)具体步骤,可以参照如图分析。
3、设置好随机数范围之后,我们要将随机数给扩散开来,所以,我们点击随机数的方框右下角顶尖出,当符号变成黑色“+”时,点击下啦,然后依次步骤向右拉,这样一排随机数就出来了,如图。
如何去除随机数的小数点
1、Excel生成的随机数是存在小数点的,大多时候,我们需要的随机数是不用小数点的,执行步骤就是右键点击,出现菜单,找到“设置单元格格式”点击进入。
2、进入设置单元格格式之后,在数字列表中,找到左侧列表的“数值”点击,后出现右侧数值,在小数点数上面点击“设置为0,这样点击确定,小数点就消失了
我假设你的A列序号是从1到1000吧(题库有1000道题),在你的SHEET2里的A列用随机函数从A2开始吧A2输入=RANDBETWEEN(1,1000)然后下拉到你所需要的题目数量(假设为50道题 A2:A51)然后在B2输入=vlookup($a2,sheet1!$a:$g,COLUMN(),0)下拉右拉 然后在A1里输入=if(sum(1/countif($A$2:$A$51,$A$2:$A$51))=count($A$2:$A$51),"完成","继续按F9刷新") 这个要CTRL+SHIFT+回车结束 最后这个是判断随机出来的题是否有重复,有你就按F9刷新