gpt4 book ai didi

google-sheets - SUMIF 跨多张纸

转载 作者:行者123 更新时间:2023-12-04 17:47:28 46 4
gpt4 key购买 nike

我有一个 Google 工作表文档,其中多个工作表具有相同的列布局。如果 G 列 =“猫”,我想对 J 列求和。

本质上,这是:

=SUMIF('A'!G3:G,"=cat", 'A'!J3:J) + SUMIF('B'!G3:G,"=cat", 'B'!J3:J) + SUMIF('C'!G3:G,"=cat", 'C'!J3:J)

但是,有很多工作表,这很麻烦。我怎样才能把它减少到这样的程度:

=SUMIF(INDIRECT({A,B,C}&"!G3:G"), "=cat", INDIRECT({A,B,C}&"!J3:J"))

最佳答案

有一个使用INDIRECT array-formula 的解决方案,参见 here .

不幸的是间接 doesn't support 中对数组进行迭代

语法 {A,B,C}&"!G3:G 是不可能的。

解决方法

第一步是将公式简化为:

=SUM(FILTER({Sheet1!B:B;Sheet2!B:B},{Sheet1!A:A;Sheet2!A:A} = "Cat"))

困难的部分是手动键入所有带有范围的工作表名称。我建议制作一个名为 Sheets_List 的工作表名称列表:

Sheet1
Sheet2

然后使用 join 生成正确的公式文本:

="{'"&JOIN("'!B:B;'",Sheets_List)&"'!B:B}"

结果是文本 "{'Sheet1'!B:B;'Sheet2'!B:B}",用它来构建公式。

关于google-sheets - SUMIF 跨多张纸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47799912/

46 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com