Google sheets 使用以水平范围为参数的COUNTIF扩展列中的ARRAYFORMULA

Google sheets 使用以水平范围为参数的COUNTIF扩展列中的ARRAYFORMULA,google-sheets,google-sheets-formula,array-formulas,Google Sheets,Google Sheets Formula,Array Formulas,我有一张表,其中我想将一列(列a)中列出的值除以1-6,这取决于给定行中的值的6个条件(列B-G)中的任何一个是真还是假 我现在每行使用一个单独的公式,计算真实条件的数量,然后用它作为除数。因此,对于第2行,公式为: =A2/COUNTIF((B2:G2),TRUE) 但是我想知道是否有可能用一个可以向下扩展的数组公式来完成这项工作。比如: =ARRAYFORMULA(A2:A27/COUNTIF((B2:G2),TRUE)) 然而,我找不到一种方法使COUNTIF公式在这种情况下起作用。

我有一张表,其中我想将一列(列a)中列出的值除以1-6,这取决于给定行中的值的6个条件(列B-G)中的任何一个是真还是假

我现在每行使用一个单独的公式,计算真实条件的数量,然后用它作为除数。因此,对于第2行,公式为:

=A2/COUNTIF((B2:G2),TRUE)
但是我想知道是否有可能用一个可以向下扩展的数组公式来完成这项工作。比如:

=ARRAYFORMULA(A2:A27/COUNTIF((B2:G2),TRUE))
然而,我找不到一种方法使COUNTIF公式在这种情况下起作用。。。它总是只对第一行或整个数组使用该值,而不是对每行一次使用一行

希望这是有道理的。更好地将问题形象化

感谢任何意见

灵感来自

→ 这似乎有效:

=ArrayFormula($A$2:$A$27/countifs(iF(COLUMN($B$2:$G$2),ROW($B$2:$B$27)),ROW($B$2:$B$27),$B$2:$G$27,TRUE))

这稍微简单一点,也应该有效。 =数组公式(如果(A2:A=”“,A2:A/MMULT(N(B2:G),{1;1;1;1;1})))

如果你有兴趣,这是我不久前制作的一个mmult演示。

你所说的
是什么意思,但我想知道是否有可能用一个可以向下扩展到行的数组公式来完成这项工作
?因为使用=ARRAYFORMULA(A2/COUNTIF((B2:G2),TRUE))然后使用鼠标通过行复制函数,所以我希望避免“通过行复制函数”。目标是在列的第一行中只包含一个公式,然后向下填充行。