【问题标题】:gSheet - Unable to get results using filter in an arraygSheet - 无法使用数组中的过滤器获得结果
【发布时间】:2022-01-05 06:56:46
【问题描述】:

我正在尝试使用数组公式引用具有多个匹配项的数据。
它无法找到任何数据。但是,如果我将“DTR!C:C=B:B”更改为“DTR!C:C=B6、B7 等”并使用数组之外的公式,它就可以工作。

我正在尝试列出拥有多台计算机的用户的计算机名称。

谢谢

=ARRAYFORMULA(iferror(transpose(
FILTER(
DTR!L:L,DTR!C:C=B:B, 
DTR!B:B="Checked"
DTR!U:U="False",
DTR!V:V="False",
))))

示例 https://docs.google.com/spreadsheets/d/1dFDl0JFzaBheRkT5LSATDTSnx6bmZezIBtmmSS_tXTA/edit?usp=sharing

【问题讨论】:

  • ARRAYFORMULA 不支持过滤器。与所需输出的示例共享您的 shhet 副本
  • @player0 感谢您对此进行调查。您将在 DTR 选项卡上找到标记为红色的区域。 docs.google.com/spreadsheets/d/…

标签: google-sheets-formula vlookup array-formulas flatten google-query-language


【解决方案1】:

删除 R6:R 范围内的所有内容并在 R6 中使用:

=INDEX(IFNA(VLOOKUP(B6:B, FILTER(
 {DSMT!C:C, DSMT!M:M}, 
 DSMT!B:B="Checked",
 DSMT!U:U="False",
 DSMT!V:V="False"), 2, 0)))

接下来,删除 S6:AA 范围内的所有内容并在 S6 中使用它:

=INDEX(IFERROR(VLOOKUP(B6:B, 
 TRIM(SPLIT(FLATTEN(QUERY(QUERY(FILTER(
 {DSMT!C:C&"×", DSMT!M:M, ROW(DSMT!M:M)}, 
 DSMT!B:B="unchecked",
 DSMT!U:U="False",
 DSMT!V:V="False"), 
 "select max(Col2) group by Col3 pivot Col1"),,9^9)), "× ", 1)), 
 SEQUENCE(1, 9)+1, 0)))

【讨论】:

  • 谢谢先生!它就像一个魅力!
猜你喜欢
  • 1970-01-01
  • 2018-06-12
  • 2021-06-10
  • 1970-01-01
  • 1970-01-01
  • 2013-10-05
  • 1970-01-01
  • 2019-09-20
  • 2019-03-24
相关资源
最近更新 更多