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

Excel按组计算差值:基于STUDENT和CLASS组合生成WANT1/WANT2

实现Excel按组差值计算需求

原始数据

STUDENTCLASSTIMEGRADE
1A15
1A28
1A36
1B12
1B29
2A12
2B16
2C13
2C20

目标结果

STUDENTCLASSTIMEGRADEWANT1WANT2
1A153-2
1A283-2
1A363-2
1B127
1B297
2A12
2B16
2C13-3
2C20-3

计算规则

  • WANT1:每个STUDENT和CLASS组合下,TIME=2对应的GRADE减去TIME=1对应的GRADE
  • WANT2:每个STUDENT和CLASS组合下,TIME=3对应的GRADE减去TIME=2对应的GRADE

Excel实现方法

假设数据从A1单元格开始(A1为STUDENT表头),WANT1对应E列,WANT2对应F列。

方法1:使用XLOOKUP公式(适合Excel 365/2021及以上版本)

  1. 在E2单元格输入WANT1的公式:
=IFERROR(XLOOKUP($A2&$B2&2,$A$2:$A$10&$B$2:$B$10&$C$2:$C$10,$D$2:$D$10)-XLOOKUP($A2&$B2&1,$A$2:$A$10&$B$2:$B$10&$C$2:$C$10,$D$2:$D$10),"")

回车后下拉填充至所有行。

  1. 在F2单元格输入WANT2的公式:
=IFERROR(XLOOKUP($A2&$B2&3,$A$2:$A$10&$B$2:$B$10&$C$2:$C$10,$D$2:$D$10)-XLOOKUP($A2&$B2&2,$A$2:$A$10&$B$2:$B$10&$C$2:$C$10,$D$2:$D$10),"")

回车后下拉填充至所有行。

方法2:使用SUMPRODUCT公式(兼容所有Excel版本)

  1. 在E2单元格输入WANT1的公式:
=IFERROR(SUMPRODUCT(($A$2:$A$10=$A2)*($B$2:$B$10=$B2)*($C$2:$C$10=2)*$D$2:$D$10)-SUMPRODUCT(($A$2:$A$10=$A2)*($B$2:$B$10=$B2)*($C$2:$C$10=1)*$D$2:$D$10),"")

回车后下拉填充至所有行。

  1. 在F2单元格输入WANT2的公式:
=IFERROR(SUMPRODUCT(($A$2:$A$10=$A2)*($B$2:$B$10=$B2)*($C$2:$C$10=3)*$D$2:$D$10)-SUMPRODUCT(($A$2:$A$10=$A2)*($B$2:$B$10=$B2)*($C$2:$C$10=2)*$D$2:$D$10),"")

回车后下拉填充至所有行。

公式说明

  • 两种方法都会自动匹配当前行的STUDENT和CLASS组合,查找对应TIME的GRADE值并计算差值
  • IFERROR函数用于处理缺少对应TIME记录的情况,返回空值以匹配目标结果格式

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 13:03:18