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

Excel中根据cust_id统一Customer_since列(保留最早首次购买年份)

解决Excel中统一客户首次购买年份的问题

针对你需要为同一客户统一最早首次购买年份的需求,以下是三种高效的批量处理方法:

方法一:数组公式(适配Excel 2019及更早版本)

假设你的cust_id在A列,Customer_since在B列,数据范围是A2:A7001、B2:B7001:

  • 在空白列(比如C列)的C2单元格输入公式:
    =MIN(IF($A$2:$A$7001=A2,$B$2:$B$7001))
  • 输入完成后按Ctrl+Shift+Enter(触发数组公式计算),再下拉填充整列
  • 公式逻辑:针对当前行的客户ID,筛选所有相同ID对应的购买年份,取最小值(即最早年份)

方法二:MINIFS函数(适配Excel 365/2021版本)

该方法无需数组操作,更简洁:

  • 在空白列C2单元格输入:
    =MINIFS($B:$B,$A:$A,A2)
  • 直接回车后下拉填充整列即可
  • 若想先建立客户-最早年份的映射表,再匹配:
    1. 在E列生成唯一客户ID:=UNIQUE(A:A)
    2. F列对应生成最早年份:=MINIFS(B:B,A:A,E2)
    3. C列用匹配函数关联:=XLOOKUP(A2,E:E,F:F)

方法三:Power Query(批量处理无公式残留)

适合需要一次性完成数据清洗,且后续可能重复处理的场景:

  1. 选中数据区域,点击数据选项卡 → 从表格/区域(自动将数据转为Excel表格)
  2. 在Power Query编辑器中,选中cust_id列,点击转换选项卡 → 分组依据
  3. 分组设置:
    • 分组依据:cust_id
    • 新列名:最早购买年份
    • 操作:最小值
    • 列:Customer_since
  4. 点击确定后,得到每个客户的最早年份;再点击合并查询 → 合并查询作为新查询
  5. 选择原数据表和分组后的表,匹配列选cust_id,合并类型选左外部
  6. 展开合并后的列,仅保留最早购买年份,删除原Customer_since列并重命名新列为Customer_since
  7. 点击关闭并上载,将处理后的数据导入Excel

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 14:15:54