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

Excel中基于LAMBDA提取数组每行首个0的列位置方案问询

解决方案:用LAMBDA+BYROW提取每行首个0的列位置

直接使用以下封装好的LAMBDA函数即可满足需求:

=LAMBDA(arr, BYROW(arr, LAMBDA(row, MATCH(0, row, 0))))

工作原理

  • BYROW(arr, ...):遍历输入的二维数组arr的每一行,将每行数据传递给内部的LAMBDA函数处理,最终返回由每行结果组成的N行1列数组,完全避开了ROW()函数和辅助行列的使用。
  • MATCH(0, row, 0):在当前行row中精确匹配第一个出现的0,返回其对应的列位置(范围1-M),第三个参数0确保匹配逻辑是从左到右查找第一个符合条件的值。

示例验证

  • 输入数组[[2,0],[4,0],[10,0],[0,0]],函数返回结果:[2,2,2,1]
  • 输入数组[[250,250,0],[500,0,0],[0,0,0]],函数返回结果:[3,2,1]

使用提示

将这个LAMBDA函数命名(比如FIRST_ZERO_COL)后,直接在Excel中调用=FIRST_ZERO_COL(你的二维数组)即可,比如你用MOD生成的数组可以直接作为参数传入。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 22:42:20