Excel中按A列合并重复行并保留D列最大值的方法
嗨,这个需求我帮很多人解决过,给你分享三个实用的方法,你可以根据自己的Excel版本和操作习惯来选择:
方法1:数据透视表(最快捷直观)
这是最简单的方法,适合快速处理数据:
- 选中你的整个数据区域(记得包含表头)
- 点击顶部菜单栏的「插入」→「数据透视表」,按提示选择透视表的放置位置(可以放在现有工作表的空白处,也可以新建工作表)
- 在右侧弹出的「数据透视表字段」面板里:
- 把A列的字段拖到「行」区域,这样会自动合并A列的重复值
- 把D列的字段拖到「值」区域,然后点击值区域里的D列字段,选择「值字段设置」,在弹出的窗口中选择「最大值」
- 完成后,透视表就会显示每个A列唯一值对应的D列最大值,你可以调整下格式让结果更整洁
方法2:公式法(适合保留原有数据结构)
如果需要在原有数据旁边直接展示结果,公式法很合适:
适合Excel 365/2021版本(支持动态数组)
- 在空白列(比如E列)的第一个单元格输入
=UNIQUE(A:A),按下回车后会自动提取A列所有不重复的内容 - 接着在F列对应单元格输入
=MAXIFS(D:D,A:A,E1),下拉填充公式,就能得到每个A列值对应的D列最大值
适合旧版Excel(无动态数组函数)
- 提取不重复值:在E1单元格输入数组公式
=INDEX(A:A,MIN(IF(COUNTIF(E$1:E1,A:A)=0,ROW(A:A),99999))),输入完成后按Ctrl+Shift+Enter组合键(数组回车),然后下拉填充直到出现错误值为止 - 计算最大值:在F1单元格输入数组公式
=MAX(IF(A:A=E1,D:D)),同样按Ctrl+Shift+Enter组合键,下拉填充即可
方法3:Power Query(适合大数据量或重复操作)
如果你的数据量很大,或者以后需要重复处理类似数据,Power Query是最优选择:
- 选中数据区域,点击「数据」选项卡→「从表格/区域」(旧版Excel可能叫「获取和转换数据」),在弹出的窗口确认表头存在,点击确定进入Power Query编辑器
- 在编辑器中选中A列,点击「转换」选项卡→「分组依据」
- 在分组设置窗口:
- 「分组依据」选择A列的字段名称
- 「新列名」可以自定义,比如填「D列最大值」
- 「操作」选择「最大值」
- 「列」选择D列的字段名称
- 点击确定后,就能看到合并后的结果,最后点击「关闭并上载」,结果会自动导入到新的工作表里
小提醒
- 处理前确保A列的内容格式一致,比如不要有的是文本格式、有的是数字格式,否则会被识别为不同的值
- 如果数据里有空白行,建议先删除,避免影响结果的准确性
内容的提问来源于stack exchange,提问作者user3596237
相关产品推荐
相关产品推荐

