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

使用LET嵌套MAKEARRAY生成累积值返回#VALUE!的原因及优化方案

问题解答

一、LET嵌套公式报错原因

当你用LET将F5:J5赋值给ps后,ps会被Excel识别为内存数组,而非原有的单元格区域引用。原公式中INDEX(F5:J5,1,1):INDEX(F5:J5,1,c)是合法的单元格区域引用,但针对内存数组ps时,INDEX(ps,1,1):INDEX(ps,1,c)试图用冒号连接两个独立的数组元素,这不是Excel支持的有效引用格式,SUM函数无法处理这种错误输入,因此返回#VALUE!。

二、更优的累积值生成公式

1. 最基础的非动态方法(无需函数嵌套)

在目标区域的第一个单元格输入:

=SUM($F5:F5)

然后向右拖动填充柄,即可生成对应位置的累积值。这种方法简单直观,兼容性最好,适合所有Excel版本。

2. 动态数组公式(无需LAMBDA,一次输入生成全列表)

输入以下公式后按回车,Excel会自动溢出生成与原数据方向一致的累积值列表:

=TRANSPOSE(MMULT(--(SEQUENCE(COLUMNS(F5:J5))<=TRANSPOSE(SEQUENCE(COLUMNS(F5:J5)))),TRANSPOSE(F5:J5)))

原理说明:

  • SEQUENCE(COLUMNS(F5:J5))生成与原数据列数匹配的序列(如1到5)
  • --(序列<=转置序列)生成下三角矩阵(对角线及下方为1,上方为0)
  • 矩阵与转置后的原数据相乘,再转置回水平方向,得到最终累积和

3. 简洁替代方案(支持LAMBDA时使用)

如果你的Excel版本支持LAMBDA函数,SCAN是更高效的选择:

=SCAN(0,F5:J5,LAMBDA(a,b,a+b))

公式从0开始,依次累加原数组的每个元素,直接生成水平方向的累积值列表。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 01:45:30