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

动态筛选数组时返回动态数组的Excel公式问题求助

动态生成对应唯一Bars的拼接列表解决方案

问题根源

TEXTJOIN不属于数组迭代函数,直接用E2#(动态数组)作为FILTER的匹配条件时,无法逐个对应计算每个Foo对应的Bars,因此返回#N/A错误。

修正后的G2公式

直接在G2输入以下动态数组公式,回车后会自动扩展并随A、B列数据更新:

=BYROW(E2#, LAMBDA(foo, TEXTJOIN(" ", TRUE, UNIQUE(FILTER(B:B, A:A=foo, "")))))

公式拆解

  • BYROW(E2#, LAMBDA(foo, ...)):遍历E列的动态唯一Foos列表,将每个Foo值传入匿名函数作为临时变量foo
  • UNIQUE(FILTER(B:B, A:A=foo, "")):筛选出当前foo对应的所有B列值并去重,无匹配时返回空文本避免错误
  • TEXTJOIN(" ", TRUE, ...):将去重后的Bars用空格拼接成单单元格文本

一站式替代方案(无需单独维护E列)

如果不想保留E列的唯一Foos列表,可直接整合逻辑生成结果:

=LET(
    unique_foos, UNIQUE(DROP(FILTER(A:A, A:A<>""), 1)),
    BYROW(unique_foos, LAMBDA(foo, TEXTJOIN(" ", TRUE, UNIQUE(FILTER(B:B, A:A=foo, "")))))
)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 16:25:21