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

求助:Excel中基于ID列、List1和List2条件生成List3的方案

Excel 动态生成List3的解决方案

基础兼容方案(适用于所有Excel版本)

在List3的起始单元格(比如G2)输入以下公式,然后下拉填充到目标行:

=IF(C2="","",IF(F2<>"",F2,E2))

逻辑说明:

  • 先判断当前行C列(ID)是否为空,为空则List3对应行留空
  • ID非空时,优先取F列(List2)内容;若F列无值,则取E列(List1)内容

动态数组方案(自动扩展,Excel 365/2021及以上)

如果你的Excel支持动态数组功能,直接在G2单元格输入以下公式,List3会自动扩展到C列所有有ID的行,且随C列内容增减自动更新:

标准写法(可读性更强)

=BYROW(C:C,LAMBDA(id,
    IF(id="","",
        LET(
            list2, INDEX(F:F,ROW(id)),
            list1, INDEX(E:E,ROW(id)),
            IF(list2<>"",list2,list1)
        )
    )
))

简洁写法

=IF(C:C="","",IF(F:F<>"",F:F,E:E))

逻辑说明:

  • 利用BYROW函数逐行遍历C列的ID值
  • 对每一行执行与基础方案相同的判断逻辑,自动生成溢出数组,覆盖所有有效ID行
  • 当C列新增或删除ID行时,List3会自动调整范围,无需手动下拉填充

注意事项:

  • 公式中的“有值”指单元格非空(文本、数字均视为有值,公式返回的空文本""会被判定为空)
  • 简洁版动态公式会自动忽略C列底部的空行,仅生成对应有效ID的List3内容

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 20:55:20