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

如何提取客户最后一笔采购金额?求适用的聚合函数

提取客户最后一笔采购金额的Excel实现方案

针对你需要按客户分组汇总、提取最后一笔采购金额的需求,Excel有多种内置方法可以实现,无需自定义函数,以下是几种常用方案:

1. 适合Excel 365/2021及以上版本:XLOOKUP或TAKE+FILTER

如果你的表格已经按日期升序排序,直接取每个客户组的最后一条采购金额即可,用TAKE+FILTER公式最简洁:

=TAKE(FILTER($C$2:$C$100, $A$2:$A$100=E2), -1)
  • 说明:FILTER筛选出当前客户(E2为目标customer_id)的所有采购金额,TAKE(-1)取筛选结果的最后一项(因原表按日期排序,最后一项即为最晚采购的金额)。

如果表格未严格排序,用XLOOKUP匹配最大日期对应的金额:

=XLOOKUP(MAX(IF($A$2:$A$100=E2, $B$2:$B$100)), $B$2:$B$100, $C$2:$C$100, "", 0, -1)
  • 说明:先通过MAX(IF(...))找到当前客户的最晚采购日期,再用XLOOKUP反向查找该日期对应的采购金额。

2. 兼容所有Excel版本:INDEX+MATCH+MAX组合

如果使用旧版Excel,可通过数组公式实现:

=INDEX($C$2:$C$100, MATCH(MAX(IF($A$2:$A$100=E2, $B$2:$B$100)), $B$2:$B$100, 0))
  • 注意:旧版Excel需按Ctrl+Shift+Enter触发数组计算,新版Excel直接回车即可。

3. 大数据量首选:Power Query分组汇总

如果采购明细数据量较大,用Power Query分组更高效且不易出错:

  • 步骤1:选中数据区域,点击「数据」选项卡→「从表格/区域」导入Power Query编辑器
  • 步骤2:选中customer_id列,点击「转换」选项卡→「分组依据」
  • 步骤3:在分组设置中添加以下规则:
    • date:操作选「最大值」,字段选date
    • purchase_counter:操作选「计数」,字段选customer_id
    • amount_of_first_purchase:操作选「自定义」,公式输入List.First([$_Total_purchase])(原表按日期排序时,第一个值即为首单金额)
    • amount_of_last_purchase:操作选「自定义」,公式输入List.Last([$_Total_purchase])(原表按日期排序时,最后一个值即为末单金额)
  • 步骤4:点击「确定」后,将结果加载回Excel即可得到完整的客户汇总表

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 04:15:37