首页 > 解决方案 > 您可以将 MAXIFS 函数嵌套到 IF ArrayFormula 中以将公式复制到列中吗?

问题描述

我目前有一个运行以下功能的 Google 表格:

={"Internal Links";ArrayFormula(IF(A2:A="","",MAXIFS(AHREFS!G:G,AHREFS!I:I,A2:A)))}

此功能旨在执行以下操作:

  1. “聚合”选项卡的 A 列中的单元格是否为空白
  2. 如果是这样,请在“聚合”选项卡的 L 列中添加“0”
  3. 如果没有,请检查“聚合”选项卡的 A 列中的单元格,并查看数据源“AHREFS”选项卡列 I 中是否存在
  4. 如果“聚合”选项卡中 A 列的内容在“AHREFS”选项卡列中不存在,我将“0”添加到“聚合”选项卡的 L 列
  5. 否则,在 G 列下的“AHREFS”选项卡中收集 MAX 值并将其添加到“聚合”选项卡列 L

它不做什么:

这是工作 Google 表格的链接: https ://docs.google.com/spreadsheets/d/1iHkU-rNtNhoOKvW_CWY7WU5OLsMFVqEFNRZlx_R-7RY/edit#gid=0

请指教!

标签: google-sheets

解决方案


两个问题。

  1. “聚合”上的链接以“/”结尾,而“AHREFS”上的链接则没有。

  2. 您不能在数组公式中使用 MAXIFS()。但是您可以对这样的查询进行 vlookup。我在名为 MK.Help 的新选项卡上的单元格 L1 中实现了它

注意:我通过在公式中的 AHref 值中添加“/”并在公式中的查找值中添加通配符“*”来避免“/”问题。

={"Internal Links";ArrayFormula(IF(A2:A="","",VLOOKUP(A2:A&"*",QUERY({AHREFS!G:G,AHREFS!I:I&"/"},"select Col2,MAX(Col1) group by Col2"),2,0)))}

推荐阅读