如何在ArrayFormula中使用COUNTUNIQUE函数并获得范围结果?

时间:2019-06-13 12:52:20

标签: google-sheets google-sheets-formula array-formulas count-unique

我尝试在单元格“ A2”中的COUNTUNIQUE中使用ArrayFormula函数,以获取像B列这样的范围内的结果,我已逐个单元格地设置了一个函数。但是它只返回一个值。这是我在“ A2”单元格中的公式:

=ArrayFormula(COUNTUNIQUE(D2:D7,E2:E7,F2:F7,G2:G7,H2:H7))

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:0)

您可以这样做:

=ARRAYFORMULA(QUERY(UNIQUE(TRIM(SPLIT(TRANSPOSE(SPLIT(QUERY(TRANSPOSE(QUERY(TRANSPOSE(
 IF(D2:K<>"", "♦"&ROW(A2:A)&"♥"&D2:K, )),,999^99)),,999^99), "♦")), "♥"))),
 "select count(Col1) where Col1 is not null group by Col1 label count(Col1)''", 0))

0

或类似这样:

=ARRAYFORMULA({
 COUNTUNIQUE(D2:H2);
 COUNTUNIQUE(D3:H3); 
 COUNTUNIQUE(D4:H4);
 COUNTUNIQUE(D5:H5);
 COUNTUNIQUE(D6:H6);
 COUNTUNIQUE(D7:H7)})

0

答案 1 :(得分:0)

这个问题让我感兴趣了一段时间。基本上,@player0 的解决方案对我来说似乎很明显。但是很难读。

也许使用组合数组和隐式结尾搜索更合适:

=INDEX(
  COUNTIF(
    UNIQUE(FLATTEN(
      {"" & ROW(C2:Z), ROW(C2:Z) & "-" & C2:Z}
    )),
    ROW(C2:Z7) & "-*"
  ) - 1
)

enter image description here