Google apps script 制作一个脚本,对单元格进行条件求和

Google apps script 制作一个脚本,对单元格进行条件求和,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我想在谷歌脚本编辑器中为电子表格制作一个小脚本,根据其他单元格求和。比如: IF (A2:P2)==Q2{ SUM (A3:P3)} 我想对包含某个字符的单元格求和。这是我的一个问题。我怎么做 这不需要脚本。你只是在描述哪个 返回一个范围内的条件和 使用你的工作表副本,我用这个公式得到了你想要的结果 =sumif(B3:P3,“A”,B4:P4) 然后,您可以使用绝对单元格引用来更容易地将其复制下来 =sumif($B$3:$P$3,“A”,B4:P4) 问题已更改 由于您更改了源代

我想在谷歌脚本编辑器中为电子表格制作一个小脚本,根据其他单元格求和。比如:

IF (A2:P2)==Q2{
   SUM (A3:P3)}
我想对包含某个字符的单元格求和。这是我的一个问题。我怎么做

这不需要脚本。你只是在描述哪个

返回一个范围内的条件和

使用你的工作表副本,我用这个公式得到了你想要的结果

=sumif(B3:P3,“A”,B4:P4)
然后,您可以使用绝对单元格引用来更容易地将其复制下来

=sumif($B$3:$P$3,“A”,B4:P4)
问题已更改

由于您更改了源代码表,因此您提出了一个相关但不同的问题。和以前一样。。。这不需要脚本。你可以用。您有两个计数标准。如果单元格包含字母,则计数;如果标题行包含数字,则计数。我们把它分成两个条件集

=COUNTIFs(B3:P3,Q2,B2:P2,1)
Q2是包含“A”的单元格,1是我们正在计算的标题列

为了通过简单的拖放将其向下移动,您仍然需要在不移动的单元格中使用绝对引用。Q2和标题行

=COUNTIFs(B3:P3,$Q$2,$B$2:$P$2,1)
这不需要脚本。你只是在描述哪个

返回一个范围内的条件和

使用你的工作表副本,我用这个公式得到了你想要的结果

=sumif(B3:P3,“A”,B4:P4)
然后,您可以使用绝对单元格引用来更容易地将其复制下来

=sumif($B$3:$P$3,“A”,B4:P4)
问题已更改

由于您更改了源代码表,因此您提出了一个相关但不同的问题。和以前一样。。。这不需要脚本。你可以用。您有两个计数标准。如果单元格包含字母,则计数;如果标题行包含数字,则计数。我们把它分成两个条件集

=COUNTIFs(B3:P3,Q2,B2:P2,1)
Q2是包含“A”的单元格,1是我们正在计算的标题列

为了通过简单的拖放将其向下移动,您仍然需要在不移动的单元格中使用绝对引用。Q2和标题行

=COUNTIFs(B3:P3,$Q$2,$B$2:$P$2,1)
要计算标题中包含“A”的所有列的总和(每行一行),请在第4季度尝试:

=ArrayFormula(MMULT(N(IF(B3:P3="A", B4:P11,)) , transpose(N(B3:P3="A"))))
将“A”改为“B”等。。对于“所有B的总和”

如果希望结果在添加新行时自动展开,请使用以下公式:

=ArrayFormula(IF(LEN(A4:A), MMULT(N(IF(B3:P3="A", B4:P,)) , transpose(N(B3:P3="A"))),))
编辑:根据新信息,我将公式更新为:

=ArrayFormula(MMULT((B2:P2=row(B3:B10)-2)*(B3:P10="A"), TRANSPOSE(COLUMN(B2:P2)^0)))

当然,Matt提出的SUMIF()同样有效(而且肯定要简单得多)。要向下拖动公式,请使用美元符号“冻结”标题行,例如:sumif($B$3:$P$3,“A”,B4:P4))

要计算标题中包含“A”的所有列的总和(每行一行),请在第4季度尝试:

=ArrayFormula(MMULT(N(IF(B3:P3="A", B4:P11,)) , transpose(N(B3:P3="A"))))
将“A”改为“B”等。。对于“所有B的总和”

如果希望结果在添加新行时自动展开,请使用以下公式:

=ArrayFormula(IF(LEN(A4:A), MMULT(N(IF(B3:P3="A", B4:P,)) , transpose(N(B3:P3="A"))),))
编辑:根据新信息,我将公式更新为:

=ArrayFormula(MMULT((B2:P2=row(B3:B10)-2)*(B3:P10="A"), TRANSPOSE(COLUMN(B2:P2)^0)))


当然,Matt提出的SUMIF()同样有效(而且肯定要简单得多)。要向下拖动公式,请使用美元符号“冻结”标题行,例如:sumif($B$3:$P$3,“A”,B4:P4))

对于该示例,sumif有效,但我没有正确发布问题,请再次检查。@Luis我已经更新了答案。请注意,您对问题的更改程度足以使答案无效。如果发生这种情况,您也可以问另一个引用此问题的问题。例如,sumif有效,但我没有正确地发布问题,请再次检查。@Luis我已更新了答案。请注意,您对问题的更改程度足以使答案无效。如果出现这种情况,您也可以问另一个引用此问题的问题。例如,公式有效,但我没有正确地发布问题,请再次检查。@Luis。。我也更新了我的答案。发帖时请尽量精确,因为这与原始问题不同。例如,公式有效,但我没有正确发帖,请再次检查。@Luis。。我也更新了我的答案。发帖时请尽量准确,因为这与原始问题不同。