You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets自动合并重复值并排名的自动化公式需求

Google Sheets 自动求和并排名人员贡献的方案

场景说明

A列存人员姓名(含重复记录),B列存单次贡献值,需自动汇总每个人员的总贡献,按贡献值降序排名,且新增人员数据时无需手动更新公式。

方案1:分步公式(清晰易调试)

  1. 自动提取唯一人员名单
    在空白列(如D1)输入:

    =UNIQUE(A:A)
    

    自动提取A列所有不重复姓名,新增人员后实时更新。

  2. 自动计算总贡献
    在相邻列(如E1)输入数组公式:

    =ARRAYFORMULA(IF(D:D<>"", SUMIF(A:A, D:D, B:B), ""))
    

    对应D列的每个姓名,自动求和其在B列的所有贡献值,空行自动留空。

  3. 自动生成排名
    在F1输入数组公式:

    =ARRAYFORMULA(IF(E:E<>"", RANK.EQ(E:E, E:E, 0), ""))
    

    参数0表示降序排名(贡献越高排名越靠前),空值自动忽略。

方案2:单公式一键生成(简洁高效)

用QUERY函数一次性完成分组求和、排序并自定义表头,在空白单元格输入:

=QUERY(A:B, "SELECT A, SUM(B) WHERE A IS NOT NULL GROUP BY A ORDER BY SUM(B) DESC LABEL A '人员姓名', SUM(B) '总贡献'", 1)
  • 公式解析:
    • SELECT A, SUM(B):选择姓名列并对贡献列求和
    • WHERE A IS NOT NULL:过滤空行
    • GROUP BY A:按姓名分组
    • ORDER BY SUM(B) DESC:按总贡献降序排列
    • LABEL ...:自定义结果表头
    • 末尾1表示原数据A:B包含表头,无表头则改为0

补充:给QUERY结果添加排名

若QUERY结果在C、D列(C为姓名,D为总贡献),在E1输入:

=ARRAYFORMULA(IF(ROW(E:E)=1, "排名", IF(ISBLANK(C:C), "", RANK.EQ(D:D, D:D, 0))))

内容的提问来源于stack exchange,提问作者Rex Nguyen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 16:15:48