You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在不支持数组参数的函数(如INDEX)中使用ARRAYFORMULA?

解决INDEX等函数数组参数不返回多结果的问题

像INDEX、GCD、AND这类函数的部分参数属于标量参数,即使传入数组并包裹ARRAYFORMULA,函数也只会处理数组的第一个元素,无法返回完整数组结果。针对你提到的取第1、5行Value值的需求,可通过以下几种方式解决:

  • 使用MAP函数迭代处理数组参数
    MAP会遍历传入的行号数组,对每个元素单独调用INDEX,从而返回多个结果:

    =MAP({1;5}, LAMBDA(row_num, INDEX(A2:B16, row_num, 2)))
    
  • 改用原生支持数组的函数(如XLOOKUP)
    如果你的需求是根据Key列的数值匹配取值,XLOOKUP原生支持数组作为查找参数,写法更简洁:

    =XLOOKUP({1;5}, A2:A16, B2:B16)
    
  • 旧版兼容写法(无需LAMBDA函数)
    若无法使用MAP这类LAMBDA系列函数,可通过拆分数组元素分别调用INDEX,再用数组形式组合结果:

    ={INDEX(A2:B16,1,2); INDEX(A2:B16,5,2)}
    

内容的提问来源于stack exchange,提问作者TheMaster

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 01:36:01