countifs 向下传播的数组公式(仅适用于 A 列中有数据的行)

Array formula for countifs to propagate down the rows (only for rows with data in column A)

我是 google 应用 sheet 公式的新手。

在附图中我突出显示了公式,它有效。

我使用的公式是 =COUNTIFS(D4:S4,"y",D3:S3,"个人")

现在我想对第 5 行和第 6 行使用 ARRAYFORMULA 传播它。

我试过下面的公式

=ArrayFormula(if(len(A2:A),COUNTIFS(D4:S,"y",D3:S3,"个人"))

--更新

添加 Matt 提供的公式后,我得到一行的计数不匹配

--更新 #2

根据 Eric 的建议,我在 Header 行中找到了一个 space

不幸的是,填充像向下方向那样横向读取的 COUNTIFS 并不是那么简单。执行此操作的常用方法是使用名为 MMULT() 的函数,该函数执行“矩阵乘法”,但非常适合像这样在 2d 范围内添加或计数。在你的情况下,因为它的日期横盘整理,我会假设 sheet 一直向右增长?一路无限穿越?

您可以在单元格 B4 中试试这个:

=ARRAYFORMULA(IF(A4:A="",,MMULT(N(OFFSET(D4,,,9^9,9^9)="Y"),TRANSPOSE(N(D3:3="Personal")))))

你可以看看这个MMULT() demo sheet我前一段时间做的。