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

如何用Office365 Excel数组公式计算各行各月YTD累计?遇#calc!错误求解

用数组公式计算每行的年初至今(YTD)累计值

需要计算每个名称对应各月份的YTD累计值,尝试使用以下公式时出现#CALC!错误:

=LET(data,B5:D7,BYROW(data,LAMBDA(r,SCAN(0,r,LAMBDA(a,v,a+v)))))

原始数据表格:

1月2月3月
A123
B456
C789

期望的YTD累计结果:

1月YTD2月YTD3月YTD
A136
B4915
C71524

问题分析与解决方法

  • 你的原公式逻辑完全正确:BYROW遍历每行数据,SCAN对每行执行逐列累计求和。出现#CALC!错误的常见原因是Excel版本不支持动态数组函数(如Excel 2019及更早版本),或者输入公式时错误选中了多个单元格而非单个单元格触发溢出。
  • 如果你使用的是Excel 365/2021(支持动态数组),只需将公式输入到单个空白单元格(比如F5),公式会自动溢出填充整个结果区域,无需手动选中区域。
  • 若你的Excel版本不支持动态数组,可以使用传统数组公式(输入后按Ctrl+Shift+Enter确认):
    =MMULT((ROW(B5:D7)=TRANSPOSE(ROW(B5:D7)))*(COLUMN(B5:D7)<=TRANSPOSE(COLUMN(B5:D7))),B5:D7)
    
  • 也可以简化原公式,去掉LET函数,直接写:
    =BYROW(B5:D7,LAMBDA(r,SCAN(0,r,LAMBDA(a,v,a+v))))
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 15:50:03