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

如何编写Excel公式实现同名行Type为No Type时取后续有效值?

解决Excel表格的Type值匹配需求

正确公式

假设你的表格是结构化表格(名称为Table1),包含Name、Type、Result三列,在Result列输入以下公式:

=IF([@Type]<>"No Type", [@Type], XLOOKUP(1, (Table1[Name]=[@Name])*(ROW(Table1[Name])>ROW([@Name]))*(Table1[Type]<>"No Type"), Table1[Type], "No Type"))

公式解析

  • 基础判断:如果当前行的Type本身不是"No Type",直接返回原Type值,无需处理
  • 后续匹配逻辑:当当前行Type为"No Type"时,通过XLOOKUP筛选三个条件:
    1. Table1[Name]=[@Name]:匹配相同名称
    2. ROW(Table1[Name])>ROW([@Name]):仅查找当前行之后的记录
    3. Table1[Type]<>"No Type":筛选非"No Type"的有效类型
  • 兜底处理:如果当前行之后没有符合条件的记录,返回"No Type"

原公式问题说明

你之前使用的=XLOOKUP(1, ([Name]= [@Name])*([Type]<>"No Type"),[Type], [Type])没有限制查找范围为当前行之后,会匹配同名称下任意位置的有效Type值(包括当前行之前的),所以不符合"取后续出现值"的要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 15:40:22