首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要脚本在无限行上运行函数

需要脚本在无限行上运行函数
EN

Stack Overflow用户
提问于 2017-11-14 21:13:11
回答 1查看 134关注 0票数 0

我尝试创建一个数组公式,以在无限行数上运行特定函数,即每次在google电子表格中创建新行时,该公式也应针对该新行运行。然而,我得出的结论是,我需要脚本来完成这项工作,而数组函数不能完成这项工作。

我的初始电子表格有一个关于数据的行,基本上我需要的是:如果列BC="x“(从第3行开始),那么在列R:AI的范围内找到最大的值。我尝试了以下公式:

=数组公式(if(BC3:BC=“x”,MAX(R3:AI3),"") )

然而,这显然不起作用,我显然可以看出原因--虽然数组确实考虑了从BC3开始的列BC中的所有值,但它将只返回R3:AI3范围中的最大值。

我也试过了:

=数组公式(if(BC3:BC=“x”,MAX(R3:AI),"")

但这将返回整个范围R3:AI的最高值,并且在列BC的每一行中也返回相同的值。

所以我认为数组公式是不合适的--有没有人可以帮我写一个脚本来执行这个函数?

EN

回答 1

Stack Overflow用户

发布于 2017-11-14 22:20:23

您仍然可以使用ArrayFormula完成此任务,只需使用一些其他函数,即ROW()INDIRECT()

代码语言:javascript
复制
=ARRAYFORMULA(IF(BC3:BC="x", MAX(INDIRECT("R" & ROW() & ":A" & ROW()))))

编辑

显然,上述方法并不适用于某些公式,例如独立于它们所嵌套的ARRAYFORMULA的间接运算。我能得到的最接近的解决方案是:

代码语言:javascript
复制
=ARRAYFORMULA(IF(BC3:BC="x", "=MAXA(R"&ROW(BC3:BC)&":A"&ROW(BC3:BC)&")",""))

我不能让它工作,但我只能做到这一点。看起来你终究还是需要一个脚本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47286787

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档