我有一个有很多标签的谷歌页面。每个选项卡都用一个人的名字命名(第一个最后)。每个人的选项卡在单元格A1中都有一个整数。如何在汇总选项卡中写入公式,该选项卡将所有命名选项卡中的所有整数加在一起,而不必列出由'+'s分隔的所有标记名?我需要对许多不同的单元格这样做,而且有许多命名的标记,因此构建所有公式的工作时间太长。Excel有一个公式,但该公式在Google Sheets中行不通。
发布于 2022-07-24 13:09:21
解决办法
您可以动态地创建公式并将其复制到A1
,但是您需要像下面这样的人的SheetTabs名称
=CONCATENATE("=",TEXTJOIN(" + ",1, ArrayFormula(SUBSTITUTE("'@'!A1","@",FILTER(C2:C,C2:C<>"")))))
发布于 2022-07-24 15:52:03
创建一个名为b
(begin)的工作表和一个名为e
(end)的工作表,该工作表可以是空的。这些纸张将在(b)之前和(e)之后,您想要在公式中考虑的所有纸张。
将=sum3D()
放在要添加的单元格中(与要在“不同”选项卡中添加的数字相同)
将此自定义函数放入脚本编辑器中
function sum3D() {
const ss = SpreadsheetApp.getActiveSpreadsheet()
var shs = ss.getSheets();
var rng = ss.getActiveSheet().getActiveCell().getA1Notation()
var sh1 = ss.getSheetByName('b').getIndex()
var sh2 = ss.getSheetByName('e').getIndex()
var result = 0
for (var i = sh1; i < sh2; i++) {
result += shs[i].getRange(rng).getValue()
}
return result
}
您可以添加一个虚拟参数作为复选框来实现计算=sum3D(checkbox)
。
https://stackoverflow.com/questions/73101106
复制