同名次的有多个姓名,你让我怎么排名?
具体应用
这个题该如何解呢?我的思路如下:先对所有人的成绩去重复,得到唯一的成绩列表;然后从唯一的成绩列表出提取第1个最大值,肯定就是第1名的成绩,用这个成绩和所有人的成绩比较,看看哪些人的成绩和这个成绩相等,这样就找到了对应的姓名。
=IFERROR(TEXTJOIN("、",,IF(LARGE(IF(FREQUENCY(B$3:B$17,B$3:B$17),B$3:B$17),ROW(A1))=B$3:B$17,A$3:A$17,"")),"")
其中FREQUENCY(B$3:B$17,B$3:B$17)部分返回的结果如下图C列所示。利用frequency函数判断B3:B17中的每个成绩是否首次出现,如果是首次出现,则返回其出现个数;如果不是首次出现,则返回0。
上一步得到的成绩就是唯一的,然后用large函数从中提取第1个最大值,肯定就是第1名的成绩。再用第1名的成绩和B2:B17的成绩进行比较,如果相等,返回A2:A17对应的姓名,如果不相等,返回空。最后用textjoin将这些姓名连接起来。
这些我就不一步一步演示了,大家可以自己拆解公式。有小伙伴说不理解frequency的含义,我就主要说下这部分。
https://pan.baidu.com/s/19lPekkBr0ibGroX1PZw2Lw
赞 (0)