【问题标题】:Using Large Function with Array Formula使用带数组公式的大函数
【发布时间】:2021-09-02 10:20:10
【问题描述】:

在下面的公式中,需要在“DATA!B:B”范围内查找“A101:A”范围内的值,并得到“DATA!G:G”范围内的最大值。但它应该在第 101 行之后自动填充。但它给出了以下错误。你认为可能是什么问题? "EQ 的数组参数大小不同。"

={"LARGE" ;ARRAYFORMULA(IF(LEN(A101:A); ARRAYFORMULA(LARGE(IF(DATA!B:B=A101:A;DATA!G:G;"");1));)) }

样本表:

https://docs.google.com/spreadsheets/d/1PAHZirzGcxKJFUrSMiCCc5v7SlUwDtjpmiwl-ATjNwA/edit?usp=sharing

【问题讨论】:

  • 请分享一份包含重现此问题的样本数据的样本表。
  • 另外,B:B 比 A101:A 大 100 行。也许你的意思是 B101:B?
  • 您好,很遗憾,它不起作用。我分享了示例表链接。 docs.google.com/spreadsheets/d/…
  • 请添加您的预期输出
  • 匹配名称的最大数量

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


【解决方案1】:

我想处理公式而不拖下来。我通过将下面的数字从大到小排序来解决这个问题。感谢您的帮助。

={"LARGE" ;ARRAYFORMULA(IF(LEN(A2:A); VLOOKUP(F2:F;SORT(DATA!A2:G; 7;FALSE);7;0);)) }

【讨论】:

    【解决方案2】:

    您需要生成 DATA 表的过滤版本,该版本仅包含原始工作表 A 列中的值。然后用LARGE取最大值。

    =large(filter(DATA!$A$1:$G;DATA!$A$1:$A=$A2)
    

    但是,由于要生成多个过滤表,所以不能使用ARRAYFORMULA,因此需要从单元格B2向下拖动。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-19
      • 1970-01-01
      • 1970-01-01
      • 2021-02-01
      相关资源
      最近更新 更多