Excel如何按销售额降序生成保留重复值的产品列表
解决方案
Excel 365 / 2021 及以上版本(支持动态数组)
直接在D2单元格输入以下公式,按回车后会自动溢出填充D、E列的所有排序内容,自动保留所有重复的产品和销售额记录:=SORT(A2:B11,2,-1)
参数说明:
- 第一个参数
A2:B11是你要排序的原始数据区域 - 第二个参数
2代表按区域的第2列(也就是销售额列B列)排序 - 第三个参数
-1代表按降序排序
旧版本Excel(无动态数组功能)
分两步操作:
- 先填充排序后的销售额:点击E2单元格输入公式,下拉填充到E11:
=LARGE(B$2:B$11,ROW(A1)) - 再填充对应产品:点击D2单元格输入公式,按
Ctrl+Shift+Enter三键组合确认数组公式,之后下拉填充到D11:=INDEX(A:A,SMALL(IF(B$2:B$11=E2,ROW($2:$11),99999),COUNTIF(E$2:E2,E2)))
原方法失效原因说明
你之前单独用LARGE函数只能正确取出降序的销售额,但匹配对应产品时如果用普通VLOOKUP/单条件INDEX MATCH,只会返回第一个符合销售额条件的产品,才会出现重复记录丢失的问题。上述旧版本公式通过COUNTIF(E$2:E2,E2)统计当前销售额在已填充区域的出现次数,定位到对应第N个匹配的产品行,就能完整保留所有重复记录。
内容的提问来源于stack exchange,提问作者Michi
相关产品推荐
相关产品推荐

