如何在Excel中获取CHOOSE构造数组内数字(分数)的排名?
在自定义CHOOSE数组中计算分数排名的方法
完全可以在单个单元格内实现这个需求,你给出的示例公式本身就是可行方案,这里再补充两种更清晰的写法:
基于CHOOSE的实现
直接用RANK.EQ搭配CHOOSE生成的数组,就能算出目标数值在自定义序列中的排名:=RANK.EQ(A1, CHOOSE({1,2,3,4}, A1, D1, C1, B1), 0)公式里的第三个参数
0代表降序排名(分数越高排名越靠前),如果需要升序排名(分数越低排名越靠前),把这个参数改成1即可。简化数组写法
因为CHOOSE({1,2,3,4}, A1, D1, C1, B1)本质就是生成一个包含指定单元格的数组,所以可以直接用数组常量替代,公式会更简洁:=RANK.EQ(A1, {A1,D1,C1,B1}, 0)
注意事项:
- 确保数组里的单元格引用都是有效的数值类型,避免文本、空值或错误值干扰排名计算
- 旧版Excel需要按
Ctrl+Shift+Enter作为数组公式输入,新版Excel支持动态数组,直接回车就能生效
内容的提问来源于stack exchange,提问作者Rafi Ur Rehman
相关产品推荐
相关产品推荐

