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

如何计算可自定义调整的欠款余额?Excel公式修复需求

计算员工欠款金额的Excel公式(支持Adjust调整值)

需求:创建Excel公式计算员工当前欠款金额,需支持Adjust调整值——按Code编号顺序生效,以Adjust值作为新的欠款基准,忽略之前所有计算记录。

数据表格

CodeNameEmployeeValue
1LoanJhon$3,000
2PaymentJhon600
3PaymentJhon300
4PaymentJhon200
5PaymentJhon700
6PaymentJhon216
7AdjustJhon216
8LoanJhon50
9PaymentJhon100

现有公式问题

当前使用的公式未考虑Code编号顺序,无法得到正确结果:

=IFERROR(INDEX(D:D,MATCH("Adjust",B:B,0))+SUMIF(OFFSET(B2,MATCH("Adjust",B:B,0),0),"Loan",OFFSET(D2,MATCH("Adjust",B:B,0),0))-SUMIF(OFFSET(B2,MATCH("Adjust",B:B,0),0),"Payment",OFFSET(D2,MATCH("Adjust",B:B,0),0)),SUMIF(B:B,"Loan",D:D)-SUMIF(B:B,"Payment",D:D))

预期结果为166,但该公式未识别第8行的Loan值,导致输出错误。

修正后的公式

=IFERROR(INDEX(D:D,MAXIFS(A:A,B:B,"Adjust",C:C,"Jhon")) + SUMIFS(D:D,C:C,"Jhon",A:A,">"&MAXIFS(A:A,B:B,"Adjust",C:C,"Jhon"),B:B,"Loan") - SUMIFS(D:D,C:C,"Jhon",A:A,">"&MAXIFS(A:A,B:B,"Adjust",C:C,"Jhon"),B:B,"Payment"), SUMIFS(D:D,C:C,"Jhon",B:B,"Loan") - SUMIFS(D:D,C:C,"Jhon",B:B,"Payment"))

公式逻辑说明

  1. 定位最新Adjust记录:用MAXIFS(A:A,B:B,"Adjust",C:C,"Jhon")找到员工Jhon所有Adjust记录中最大的Code值(即最新的Adjust位置)
  2. 获取Adjust基准值:通过INDEX(D:D, 上述最大Code)提取该Adjust对应的Value作为欠款基准
  3. 计算Adjust后的收支:用SUMIFS分别计算该Code之后的所有Loan总和、Payment总和,用基准值加Loan总和再减Payment总和得到当前欠款
  4. 无Adjust的情况:如果没有Adjust记录,直接计算该员工所有Loan总和减去Payment总和

结果验证

按照公式计算:Adjust值216 + 第8行Loan50 - 第9行Payment100 = 216+50-100=166,与预期结果一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 09:37:04