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

如何在Excel中将多条记录合并为单条?VLOOKUP失效求解

Excel 多记录合并为单条记录的解决方案

下面提供两种实用方法,帮你将同一EID的多条记录合并到一行:

方法一:Power Query(推荐,无需复杂公式)

适合数据量较大或需要重复操作的场景:

  1. 打开输入数据所在工作表,选中任意数据单元格,点击「数据」选项卡 → 「从表格/区域」,确认弹窗中「我的表格有标题」已勾选,进入Power Query编辑器。
  2. 点击「转换」选项卡 → 「分组依据」,设置:
    • 分组依据:EID
    • 新列名:记录详情
    • 操作:所有行
      点击确定后,每个EID会对应一个包含其所有记录的子表。
  3. 选中记录详情列,点击「添加列」→ 「索引列」→ 「从1开始」,给每个子表里的记录添加序号(1、2...)。
  4. 点击记录详情列右侧的展开按钮(🔽),选择「展开所有列」,此时表格会拆分出记录详情.State、记录详情.Wage、记录详情.Tax列。
  5. 选中索引列和所有展开后的列,点击「转换」→ 「透视列」:
    • 值列选择记录详情.State,点击确定;重复此操作,分别透视记录详情.Wage和记录详情.Tax。
  6. 重命名透视后的列,比如将State_1改为State 1,Wage_1改为State 1-Wage,以此类推。
  7. 点击「主页」→ 「关闭并上载」,将处理后的数据导入到新工作表,再移动到你需要的「输出」工作表即可。

方法二:公式法(适合小批量数据快速处理)

需要先在输入表添加辅助列,再用匹配函数提取数据:

  1. 在输入工作表的空白列(比如E列),E2单元格输入公式:
    =COUNTIF($A$2:A2,A2)
    
    下拉填充到所有行,这会给每个EID的第1条记录标记1,第2条标记2。
  2. 切换到「输出」工作表,A2单元格输入:
    =UNIQUE(输入!A:A)
    
    按回车得到所有唯一的EID。
  3. 依次在B2到G2输入以下公式,然后下拉填充到所有行:
    • State 1:=XLOOKUP($A2&1,输入!$A:$A&输入!$E:$E,输入!$B:$B,"")
    • State 1-Wage:=XLOOKUP($A2&1,输入!$A:$A&输入!$E:$E,输入!$C:$C,"")
    • State 1-Tax:=XLOOKUP($A2&1,输入!$A:$A&输入!$E:$E,输入!$D:$D,"")
    • State 2:=XLOOKUP($A2&2,输入!$A:$A&输入!$E:$E,输入!$B:$B,"")
    • State 2-Wage:=XLOOKUP($A2&2,输入!$A:$A&输入!$E:$E,输入!$C:$C,"")
    • State 2-Tax:=XLOOKUP($A2&2,输入!$A:$A&输入!$E:$E,输入!$D:$D,"")
      (如果你的Excel版本没有XLOOKUP,可改用INDEX+MATCH组合:比如State 1用=INDEX(输入!B:B,MATCH($A2&1,输入!A:A&输入!E:E,0)),按Ctrl+Shift+Enter确认数组公式)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 09:23:27