发布时间:2022-10-08 文章分类:Excel函数 投稿人:赵颖 字号: 默认 | | 超大 打印

小伙伴们好啊,今天老祝和大家分享一期简单好玩还比较实用的内容:在题目库中随机抽取测试题。

先看效果:

随机抽取测试题,简单方法请拿好

接下来咱们说说具体的操作步骤:

步骤1

先准备好题目库的内容,一会儿咱们就是在这里面提取题目了:

随机抽取测试题,简单方法请拿好

步骤2

在“题目库”工作表的C2单元格输入以下公式,将公式下拉:

=RAND()

在“题目库”工作表的D2单元格输入以下公式,将公式下拉:

=RANK(C2,$C$2:$C$53)

此时的表格效果如下图所示:

随机抽取测试题,简单方法请拿好

步骤3

切换到“测试问题”工作表,在B2单元格输入输入以下公式,向下复制到B6单元格:

=INDEX(题目库!B:B,MATCH(ROW(A1),题目库!D:D,0))

随机抽取测试题,简单方法请拿好

步骤4

单击【公式】选项卡下的【计算选项】,在下拉菜单中选择【手动】:

随机抽取测试题,简单方法请拿好

OK,只要按下F9键,就会自动换一组新的题目了:

随机抽取测试题,简单方法请拿好

最后咱们简单说说公式的意思:

首先使用RAND函数,为每个题目后面加上一个随机数。

然后使用RANK函数得到这个随机数在所有随机数里的排名,这样就相当于是给每个题目后加了一个随机变化的序号。

再说说“测试问题”工作表里公式的含义:

=INDEX(题目库!B:B,MATCH(ROW(A1),题目库!D:D,0))

“ROW(A1)”部分的作用是得到参数的行号,结果为1。公式下拉时,参数会依次变成A2、A3、A4……,目的是产生一组从1开始的递增序号。

MATCH函数以这个序号作为查询值,在“题目库”工作表的D列中返回对应的位置信息,最后由INDEX函数根据这个位置信息,返回“题目库”工作表B列的内容。

由于“题目库”工作表D列的排名是随着随机数的变化而不断变化的,所以MATCH函数的结果也会不断变化,最终实现了随机提取题目内容的要求。

今天的练习文件在此,如果有兴趣,可以把练习文件中的测试题也做一下,看看你的功力到了几层?