首页 > Excel专区 > Excel教程 >

Excel统计得票最多的姓名

Excel教程 2021-12-22 20:17:36

问题情境

如下样表,记录了每个人的得票情况:

求统计得票最多的姓名。

公式实现

在D2单元格输入公式:

=IFERROR(INDEX(B$2:B$16,SMALL(MODE.MULT(MATCH(B$2:B$16,B$2:B$16,)),ROW(A1))),””)

即得得票最多的姓名。

如果得票最多的不止一位,可向下填充公式,得出其它姓名。

如下图:

公式解析

MATCH(B$2:B$16,B$2:B$16,):

在B2:B16区域,依次匹配B2:B16单元格中每一位姓名出现的位置。MATCH函数匹配位置,只能匹配第一次出现时的位置,比如“王一”,虽然出现在第1、6、7、11、13位上,但MATCHA的返回值都是1,所以本部分返回的是各个姓名第一次出现位置的数组:

{1;2;2;4;4;1;1;2;9;2;1;9;1;2;10}

MODE.MULT(MATCH(B$2:B$16,B$2:B$16,):

MODE.MULT计算出现最多的位次,即{1;2};

SMALL(MODE.MULT(MATCH(B$2:B$16,B$2:B$16,)),ROW(A1)):

因为有两个出现最多的位次,所以在D2显示ROW(A1)即第一个位次的姓名,D3显示ROW(A2)即第二个位次的姓名;

INDEX(B$2:B$16,SMALL(MODE.MULT(MATCH(B$2:B$16,B$2:B$16,)),ROW(A1))):

用INDEX函数显示B2:B16区域中对应位次的姓名;

IFERROR(INDEX(B$2:B$16,SMALL(MODE.MULT(MATCH(B$2:B$16,B$2:B$16,)),ROW(A1))),””):

屏蔽错误值,当公式下拉到D4级以后,再没有得票最多姓名时出现空值。


标签: excel函数excel函数公式excel表格制作excel教程

office教程网 Copyright © 2016-2020 https://www.office9.cn. Some Rights Reserved.