如何按右侧SumProduct结果列对两列数据(含转置唯一名称)降序排序
按数值降序排序唯一名称及对应汇总值的方法
假设你的源数据在A:B列(A列是名称,B列是对应数值),已经通过公式提取唯一名称到D列、用SumProduct算出对应汇总值到E列,以下是两种可行的排序方法:
方法1:动态数组一步生成排序结果(适配Excel 365/2021及以上版本)
直接跳过先提取再手动排序的步骤,用动态数组公式一次性生成按数值降序排列的名称和汇总值:
在空白单元格(比如G1)输入公式:
=SORT(HSTACK(UNIQUE(A:A), SUMPRODUCT(--(A:A=TRANSPOSE(UNIQUE(A:A))), B:B)), 2, -1)
公式说明:
UNIQUE(A:A)提取所有唯一名称SUMPRODUCT(--(A:A=TRANSPOSE(UNIQUE(A:A))), B:B)批量计算每个唯一名称的数值总和HSTACK将名称列与汇总值列合并为两列数据SORT指定按第2列(汇总值)降序(参数-1表示降序)排序
方法2:对已提取的结果手动排序(兼容旧版Excel)
如果已经有了D列的唯一名称和E列的汇总值:
- 选中
D:E两列的全部数据(包含表头的话要一起选中) - 点击菜单栏「数据」→「排序」
- 在弹窗中设置:
- 主要关键字:选择汇总值所在列(比如E列)
- 次序:选择「降序」
- 勾选「数据包含标题」(如果有表头),点击确定完成排序
注意事项
- 动态数组公式生成的结果会随源数据更新自动同步排序
- 旧版Excel排序后,若源数据变动,需要重新执行排序操作
内容的提问来源于stack exchange,提问作者Steve
相关产品推荐
相关产品推荐

