【问题标题】:Return cell content based on max value of other column in Google Sheets根据 Google 表格中其他列的最大值返回单元格内容
【发布时间】:2019-10-30 21:02:05
【问题描述】:

在 Google 表格中,我有一个包含动态单元格的表格,用于计算来自 Google 表单的提要中出现的次数。在左侧,A 列中有项目的名称,右侧的列计算它们在表单的响应中列出的次数,因此随着更多响应的添加,此值会发生变化。我正在尝试制作一份报告,其中提到每列中哪个项目的实例最多。

我最初使用的公式有效: =INDEX(INDIRECT("A$3:A$6"), 1, MATCH(MAX(B3:B6), B3:B6, 0))

但是当我将它移到其他列上时,它会给出 #NUM 错误(参数 3 的值 4 超出范围),例如: =INDEX(INDIRECT("A$3:A$6"), 1, MATCH(MAX(E3:E6), E3:E6, 0))(即使我更改公式上的“1”或“0”以匹配列号,错误仍然存​​在)

我还发现了 2 行具有相同值的问题......或者它们都没有数据并且都是“0”。

任何人都可以看到错误的确切位置或知道如何处理重复值吗? (我考虑使用 IF 来命名所有重复值,除非它们为 0,在这种情况下它可能会显示“未找到”消息,但我不确定如何实现它。)

我检查了这些:

示例表(Tab1 是数据,tab2 是公式所在的位置。这个问题在第 9 行,我尝试了 2 个可能的公式)在这里:https://docs.google.com/spreadsheets/d/1h8_K7nb82hJkDsmUpn6iSkZXhnYEo1NRC2LmRKochgw/edit?usp=sharing。

我尝试了 2 个公式:

公式 1(B9 - 它给出 #NUM! 错误):

=INDEX(INDIRECT("A$3:A$6"), 1, MATCH(MAX(B3:B6), B3:B6, 0))

公式 2(C9- 给出 #ERROR!):

=INDEX(INDIRECT("A$3:A$6"), 1, IF(C3:C6>0,"MATCH(MAX(C3:C6), C3:C6, "0","NO VALUES"))

第二个公式应该通过仅比较值是否大于 0 来解决 0 值问题,否则显示“NO VALUES”消息。

【问题讨论】:

  • 请分享您的工作表副本
  • @player0 我添加了链接和我根据他们给出的错误尝试的 2 个公式。

标签: if-statement google-sheets max match google-sheets-formula


【解决方案1】:

粘贴到B9中并向右拖动:

=INDIRECT("A"&MATCH(MAX(B3:B6), B1:B6, 0))


对于C9,您可以使用:

=IFNA(INDIRECT("A"&MATCH(IF(MAX(C3:C6)<>0, MAX(C3:C6), "♥") , C1:C6, 0)), "no values")

【讨论】:

  • 我对混合这两个公式有疑问,因此如果 values =0; 它仍然会抛出一条消息;此外,下面还有更多表格,如果我拖动第二个公式,则会出现 #REF! 错误,该错误将覆盖较低的单元格(下面还有其他表格)。所以我尝试了类似的东西:=If(INDIRECT("A$3:A$6"&amp;MATCH(MAX(H3:H6)), H3:H6, 0), "no values")
  • 您检查了吗:docs.google.com/spreadsheets/d/…?
  • 是的,我做到了。但是当我将它放在另一张纸上时会变得很奇怪,因为选项卡周围有多个表格,不仅向下而且向上,并且有 #REF! 的东西说答案会覆盖另一个单元格在同一列中(对于那些 比全 0)。奇怪的是,所有不同的行。知道为什么吗?
  • 你能分享那张纸吗?
  • 我重新启动并且它正在工作......但是关于stackoverflow.com/questions/58564930/…的专栏不再工作了。无论如何,这现在正在工作
【解决方案2】:
=QUERY(**Range to return**,"SELECT **COLUMN TO RETURN** MATCHES '"&MAX(Range to match)&"' ")

如果您想要更多匹配:

AND条件:

=QUERY(**Range to return**,"SELECT **COLUMN TO RETURN** MATCHES '"&MAX(Range to match)&"' AND '"&MAX(Range to match)&"' ")

或条件:

=QUERY(**Range to return**,"SELECT **COLUMN TO RETURN** MATCHES '"&MAX(Range to match)&"' OR '"&MAX(Range to match)&"' ")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-13
    • 1970-01-01
    • 2012-09-08
    • 1970-01-01
    相关资源
    最近更新 更多