Arrayformula 适用于 countifs 但不适用于 sumifs?

Arrayformula works for countifs but not sumifs?

很好奇为什么公式 2(下方)不起作用,即 returns 只是一个零而不是数组,而公式 1 有效(下方)。论证结构似乎是相似的。

DM:DM 是雇主名单。 (不是唯一的雇主,即 Bob post 几份工作) DW:DW 是为特定工作提供的职位数量。 DU:DU 是工作类型。

DM      DW  DU
Bob     3   Sales
Alice   10  Cashier
Mike    4   Clerk 
Bob     1   Sales

我认为问题在于我使用嵌套在 countifs 和 sumifs 中的 "Unique" 函数并将其包装在 arrayformula 中的方式。在公式 1 中,数组 returns 工作数量 post 用于唯一雇主,因此 Bob 2、Alice 1、Mike 1。我在公式 2 中尝试的是 Bob 4、Alice 10、Mike 4. 我可以通过分隔多个列和函数来完成此操作,但我想知道是否有人知道使用 arrayformula 执行此操作的优雅方法,因此我将其放在一个列中。谢谢,我希望这个问题很清楚。

一级方程式

=arrayformula(countifs('Data (QC)'!DM:DM,UNIQUE('Data (QC)'!DM:DM),'Data (QC)'!DU:DU,"Shop Sales Assistant"))

方程式 2

=arrayformula(sumifs('Data (QC)'!DW:DW,'Data (QC)'!DM:DM,unique('Data (QC)'!DM:DM),'Data (QC)'!DU:DU,"Shop Sales Assistant"))

尝试:

=QUERY(A2:C, "select A,sum(B) where A !='' group by A label sum(B)''", 0)


以及计数:

=QUERY(A2:C, "select A,count(B) where A !='' group by A label count(B)''", 0)
=arrayformula ( unique ({filter( Log!M2:M, Log!M2:M<>"" ), sumif ( filter ( Log!M2:M, Log!M2:M<>"" ), "=" & filter ( Log!M2:M, Log!M2:M<>"" ), Log!W2:W )}))