共计 551 个字符,预计需要花费 2 分钟才能阅读完成。
这是我自己碰到的一个EXCEL应用难题,我也在网络上找了很久,发现大家对不含重复数据的取值有很多解决办法,但对含重复数据的取值好像只有VBA编程了,最后我反复推算其他网友关于不含重复数字的取值公式,巧妙的修改了一个参数,终于实现了——-用公式取回一列数据(含重复数字)第K个最大值对应的行号及对应的其他列的值!
源数据;
行号 | 工厂 | QR | PPM |
Row 19 | 工厂A | 8 | 5 |
Row 20 | 工厂B | 8 | 6 |
Row 21 | 工厂C | 7 | 8 |
Row 22 | 工厂D | 6 | 7 |
Row 23 | 工厂E | 5 | 7 |
Row 24 | 工厂F | 3 | 2 |
Row 25 | 工厂G | 4 | 4 |
Row 26 | 工厂H | 2 | 3 |
Row 27 | 工厂X | 9 | 10 |
处理后
Site | QR | PPM | |
第一名 | 工厂X | 9 | 10 |
第二名 | 工厂A | 8 | 5 |
第三名 | 工厂B | 8 | 6 |
第四名 | 工厂C | 7 | 8 |
第五名 | 工厂D | 6 | 7 |
输入公式后记得Ctrl+Shit+Enter结束,公式:
=OFFSET(Sheet1!A$1,SMALL(IF($B$19:$B$27=LARGE($B$19:$B$27,ROW(A1)),ROW($B$19:$B$27),4^8),(ROW(A1)-RANK(LARGE($B$19:$B$27,ROW(A1)),$B$19:$B$27)+1))-1,0)
诸位可以从附件的例子中获取灵感,研究下就OK。
附件可以下载:如何取回含重复数字的一列数据第K个最大值的对应行号
正文完