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

Google Sheets:将含SEQUENCE、ROW的公式转为ArrayFormula

Google Sheets:将含ROW()的SUM(SEQUENCE())转换为ArrayFormula

我需要把Google Sheets里的这个公式改成ArrayFormula形式:

=SUM(SEQUENCE(ROW()))

核心要求

  • 不使用辅助列
  • 必须用ArrayFormula
  • 禁止使用脚本

手动拖拽这个公式到5行时,会生成如下累加结果:

1
3
6
10
15

但我试了下面的写法,完全不生效:

=ARRAYFORMULA(SUM(SEQUENCE(ROW(A1:A5))))

问题出在:SEQUENCE要求第一个参数是单个整数,但ROW(A1:A5)在ArrayFormula里是数组,导致SEQUENCE只处理ROW(A1),最后只在单个单元格返回结果5(本质是SUM(1,1,1,1,1))。

我需要保留外层的ArrayFormula,同时让ROW()的结果不再以数组形式传递给SEQUENCE,有没有可行的解决办法?


实际场景公式

上面是简化后的示例,我实际要转换的公式是:

=IF(
    AND(
        ROW() - 1 <= ROUNDDOWN($Q$4 * 12, 0),
        $C$1 = TRUE
    ),
    LAMBDA(
        var,
        IF(
            $P$17 = "Ano",
            (1 - 0.15) * var + 0.15 * ((ROW() - 1) * ($Q$10 + $Q$28 + $Q$29) + ROUNDDOWN((ROW() - 1) / 12, 0) * $P$30),
            var
        )
    )(
        ($Q$10 + $Q$28 + $Q$29) * SUMPRODUCT(($Q$7 / 100 + 1) ^ SEQUENCE(ROW() - 1, 1, 1, 1)) + ROUNDDOWN((ROW() - 1) / 12, 0) * $P$30
    ),
    ""
)

补充说明

我觉得SCAN函数解决不了这个问题。实际场景是用当前行号作为指数计算求和(比如x^1 + x^2 + x^3…,x是常数),举个例子,当x=2时,公式是:

=SUM(SEQUENCE(2^ROW()))

对应的ArrayFormula尝试写法是:

=ARRAYFORMULA(SUM(SEQUENCE(2^ROW(A1:A5))))

内容的提问来源于stack exchange,提问作者Vojtěch Štefek

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 01:03:23