【问题标题】:Expanding a difficult formula using ARRAYFORMULA while avoiding circular references (Google Sheets)使用 ARRAYFORMULA 扩展一个困难的公式,同时避免循环引用(谷歌表格)
【发布时间】:2020-10-08 09:33:10
【问题描述】:

我正在尝试在 Google 表格中设置一个公式来执行此操作...

=IF(IFERROR(INDEX(Matches!$L$2:$L,MATCH($A2&(B$1-14),Matches!$H$2:$H&Matches!$M$2:$M,0)))=1,
IFERROR(OFFSET($A$1,INDEX(Matches!$I$2:$I,MATCH($A2&(B$1-14),Matches!$H$2:$H&Matches!$M$2:$M,0)),COLUMN()-1)-(1/(2*($A2)^2))),
$A2)

也就是说,如果(比赛赢了,取你被击败的对手的当前时期的排名并计算它,否则显示上一时期的排名)。

但我想将其设置为 ARRAYFORMULA,以便它自动展开。我所拥有的是这个(它不起作用):

=ARRAYFORMULA(IF(IFERROR(VLOOKUP($A$2:$A&($B$1:$1-14),{Matches!$H$2:$H&Matches!$M$2:$M,Matches!$L$2:$L},2,0))=1,
OFFSET($A$1,VLOOKUP($A$2:$A&($B$1:$1-14),{Matches!$H$2:$H&Matches!$M$2:$M,Matches!$I$2:$I},2,0),SEQUENCE(1,COUNTA($B$1:$1),2,1))-(1/(2*($A$2:$A)^2)),
$A$2:$A))

它应该是这样的:

https://i.stack.imgur.com/Ui3nE.png

实际结果是这样的:

https://i.stack.imgur.com/tQOl7.png

所有这些错误都是相同的消息,即 VLOOKUP 找不到 143997,这只是第一个值对。我试过使用 VLOOKUP/MATCH,但它会产生循环引用错误。

这可能吗?我愿意相信它不是,但我想我应该问。感谢您提供的任何帮助。

【问题讨论】:

  • 分享您的工作表副本
  • 请考虑分享test sheet
  • 抱歉耽搁了。我开始做这件事。 docs.google.com/spreadsheets/d/e/… RQ、NewRQ 和 Rank 选项卡是 RQArr、NewRQArr 和 RankArr 的工作、非 ARRAYFORMULA 版本。如果您能想出使这三个 ARRAYFORMULA 版本中的任何一个工作的方法,我将不胜感激。我碰壁了。
  • 抱歉,该链接不允许您查看公式。使用这个:docs.google.com/spreadsheets/d/…

标签: arrays google-sheets vlookup offset


【解决方案1】:

您不能在 ARRAYFORMULA 中使用该 OFFSET 公式。当VLOOKUP 抛出错误时,OFFSET 无法处理它。这就是为什么它不起作用。您应该将您的数学应用于VLOOKUP 的输出。

【讨论】:

  • 在这种情况下,数学在两个 VLOOKUP 函数之外。我之前在 ARRAYFORMULA 中成功使用过 OFFSET。是我使用的方式吗?
  • 对于不清楚的答案,我很抱歉。我编辑了它。如果您有办法将数学直接应用于VLOOKUP 输出,它将起作用。
  • 只是为了让我理解,你知道为什么 VLOOKUP 在这种情况下会抛出错误吗?似乎不应该。
  • 这个等效公式会抛出一个循环引用错误,顺便说一句: =ARRAYFORMULA(IF(IFERROR(VLOOKUP($A$2:$A&($B$1:$1-14),{Matches!$ G$2:$G&Matches!$L$2:$L,Matches!$K$2:$K},2,0))=1, VLOOKUP(VLOOKUP($A$2:$A&($B$1:$1-14) ,{Matches!$G$2:$G&Matches!$L$2:$L,Matches!$H$2:$H},2,0),$A$2:$G,SEQUENCE(1,COUNTA($B$1: $1),2,1),1)-(1/(2*($A$2:$A)^2)), $A$2:$A))
  • 之所以如此,是因为每次查找都不匹配。这将引发错误,并且 OFFSET 函数需要使用数值。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-05-29
  • 1970-01-01
  • 2014-12-18
  • 1970-01-01
  • 2022-08-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多