【问题标题】:Returning top value of column from range in google sheets从谷歌表格的范围内返回列的最高值
【发布时间】:2021-12-25 11:29:06
【问题描述】:

假设我有一个这样的列表。

Group 1     Group 2
Edward, C   Kate, A
Mark, F     Ava, Z

现在,在不同的列中 =IF(COUNTIF('Gender'!$A$2:$B$3, "Kate, A"), "", "") 是我当前的公式。我想让第一组空语音标记返回第 1 组或第 2 组,具体取决于它是什么列。我仍然需要 COUNTIF,因为我的实际工作表中的值不会包含在任一列中。

谢谢。

【问题讨论】:

标签: google-sheets split vlookup spreadsheet flatten


【解决方案1】:

尝试:

=INDEX(IFNA(VLOOKUP("Kate, A", SPLIT(FLATTEN(
 IF(Gender!A2:B="",,Gender!A2:B&"×"&Gender!A1:B1)), "×"), 2, 0)))

更新:

=INDEX(IFNA(VLOOKUP(A1:A, QUERY(SPLIT(FLATTEN(
 IF(Groups!B2:C="",,Groups!B2:C&"×"&Groups!A1&"×"&Groups!B1:C1), 
 IF(Groups!F2:G="",,Groups!F2:G&"×"&Groups!E1&"×"&Groups!F1:G1)), "×"), 
 "select Col1,max(Col3) where Col2 is not null 
  group by Col1 pivot Col2 label Col1'"&A1&"'"), {2, 3}, 0)))

demo sheet

【讨论】:

  • 感谢您的帮助!查询部分究竟做了什么?抱歉,我不太熟悉 Google 表格查询语言。
  • @Timewarper 基本上它接受输入并根据需要旋转(分发)它。问题是它适用于所有输入值,因此我们使用 vlookup 将其过滤到您只需要的值 (A2:A)
  • 如果公式不在 B1 而不是 E1 或 F1 中,我该如何编辑它?我假设查询需要更改,我了解其余部分。
  • @Timewarper 对 Col1 的引用是第一列,不一定表示 A 列。所以你可以把这个公式放在 E1 或 F1 中。只有当你想要它在第 2 行时,你才需要将 VLOOKUP(A1:A 更改为 VLOOKUP(A2:A ...我们基本上使用 FLATTEN 创建一个单列,然后我们将其拆分为 3 列,因此 Col1、Col2、Col3 引用将永远在场
  • 谢谢。现在大部分时间都在工作。在我的一张纸上,它已经运行,但在最左边的列中没有返回任何内容。我尝试在示例表上测试公式,它起作用了。 docs.google.com/spreadsheets/d/… 像这样。很抱歉所有这些问题,我对电子表格有点缺乏经验。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-25
  • 2020-04-28
  • 1970-01-01
  • 2019-06-29
  • 1970-01-01
相关资源
最近更新 更多