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

如何用非VBA的Excel公式高效分组整理两列一对多数据?

Excel一对多对应关系高效归集方案(无VBA)

步骤1:提取第一列唯一值

在新工作表(或当前表空白区域的首个单元格,比如D1)输入公式:

=UNIQUE(原表!A:A)
  • 该公式会自动提取原表A列的所有唯一项,保留原顺序;
  • 如果需要排序,修改为:
=SORT(UNIQUE(原表!A:A))

回车后Excel会自动向下填充所有唯一值。

步骤2:归集对应第二列的关联项

在第一步得到的唯一值右侧单元格(比如E1)输入公式:

=TEXTJOIN(", ", TRUE, FILTER(原表!B:B, 原表!A:A=D1, ""))

鼠标放在单元格右下角,光标变成十字时双击或下拉填充到所有唯一值行即可。

公式说明:

  • TEXTJOIN(", ", TRUE, ...):把筛选出的多个文本用「逗号+空格」连接,TRUE表示忽略空值;你可以把", "换成其他分隔符,比如要换行显示就用CHAR(10),记得给单元格设置「自动换行」;
  • FILTER(原表!B:B, 原表!A:A=D1, ""):筛选原表中A列等于当前D1单元格值的所有B列内容,无匹配项时返回空字符串。

针对数千行数据的优化建议

  • 用精确单元格范围代替整列(比如原表数据是A1:B5000,就写成UNIQUE(原表!A1:A5000)),减少计算量提升效率;
  • 若使用Excel 365/2021版本,以上函数支持动态数组,输入公式后会自动扩展,无需手动下拉(TEXTJOIN列需匹配唯一值行数)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 02:34:58