在谷歌应用程序脚本中遍历列表并设置SUM公式



我有一个存储在频繁更新的索引中的行列表。目前存储在我的索引中的行如下:

[5.0, 11.0, 20.0, 23.0, 33.0, 40.0, 44.0, 49.0, 52.0, 27.0]

这些行中充满了我希望在第4行中相加的数字。

我尝试过以下几种:

for (var x=0; x<index.length;x++){
var totalgeneral = sheet1.getRange(4,14,1,100)
var k = index[x]
totalgeneral.setFormulaR1C1("=SUM(R[1]C[0]:R["+k+"]C[0])")
}

然而,它所做的只是将第四行下面的10行相加,因为这是我索引中的行数。如何进行迭代,使其仅对列表中的行求和?

非常感谢!

脚本在每次迭代过程中都会重写公式。SUM公式接受多个参数,这些参数应该用逗号分隔。使用map将所有元素转换为RC表示法,并使用join表示法:

const formulaArguments = [5.0, 11.0, 20.0, 23.0, 33.0, 40.0, 44.0, 49.0, 52.0, 27.0]
.map(k => `R[${k}]C[0]`).join();
totalgeneral.setFormulaR1C1("=SUM("+formulaArguments+")")

相关内容

  • 没有找到相关文章

最新更新