代码之家  ›  专栏  ›  技术社区  ›  Keith Bryant

这是返回谷歌工作表中的第一个实例,而不是最后一个实例

  •  1
  • Keith Bryant  · 技术社区  · 2 周前

    我想在谷歌工作表中搜索D栏中最后一个有“英语”的单元格。。。然后从E到BL返回该行。

    由于某些原因,此公式将返回第一个匹配行,而不是最后一个:

    =INDEX(E2:BL, MATCH("English", D2:D, MATCH(2, 1/(D2:D="English"))))
    

    我该如何调整?

    2 回复  |  直到 2 周前
        1
  •  0
  •   Christian    2 周前

    您的公式返回第一个匹配行,而不是最后一个,因为 MATCH("English", D2:D, ... ) 在你的公式中,找到D列中第一个出现的“English”。然后, MATCH(2, 1/(D2:D="English")) 在由第一MATCH函数找到的第一次出现的范围内进行评估。

    要解决此问题,请修改公式,使第二个MATCH函数从D列的开始到结束进行搜索:

    =INDEX(E2:BL, MATCH(2, 1/(D2:D="English")), )
    
        2
  •  0
  •   z..    2 周前

    使用 XLOOKUP 具有 搜索模式 设置为-1:

    =XLOOKUP("English",D2:D,E2:BL,,,-1)