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

求Excel公式:根据指定产品返回对应非空口味单元格区域

Excel公式实现按产品提取对应所有口味

公式解决方案

针对L4、M4、N4单元格,分别输入以下公式(旧版Excel需按Ctrl+Shift+Enter作为数组公式输入,新版Excel直接回车即可):

L4(提取第一个口味)

=INDEX($C:$C,SMALL(IF(($C:$C<>"")*(ROW($C:$C)>MATCH($L$3,$B:$B,0))*(ROW($C:$C)<=IFERROR(AGGREGATE(15,6,ROW($B:$B)/($B:$B<>""),MATCH($L$3,$B:$B,0)+1)-1,ROWS($B:$B))),ROW($C:$C)),ROWS($L$4:L4)))

M4(提取第二个口味)

=INDEX($C:$C,SMALL(IF(($C:$C<>"")*(ROW($C:$C)>MATCH($L$3,$B:$B,0))*(ROW($C:$C)<=IFERROR(AGGREGATE(15,6,ROW($B:$B)/($B:$B<>""),MATCH($L$3,$B:$B,0)+1)-1,ROWS($B:$B))),ROW($C:$C)),ROWS($L$4:M4)))

N4(提取第三个口味)

=INDEX($C:$C,SMALL(IF(($C:$C<>"")*(ROW($C:$C)>MATCH($L$3,$B:$B,0))*(ROW($C:$C)<=IFERROR(AGGREGATE(15,6,ROW($B:$B)/($B:$B<>""),MATCH($L$3,$B:$B,0)+1)-1,ROWS($B:$B))),ROW($C:$C)),ROWS($L$4:N4)))

公式解释

  1. 定位产品起始行:MATCH($L$3,$B:$B,0) 精准找到L3中目标产品在B列的行号。
  2. 定位产品结束行:
    • AGGREGATE(15,6,ROW($B:$B)/($B:$B<>""),MATCH(...) +1) 找到目标产品之后下一个非空B列的行号
    • 用IFERROR(...,ROWS($B:$B))处理最后一个产品的情况,直接取B列最后一行作为结束行
    • 减1后得到当前产品对应数据的最后有效行
  3. 筛选有效口味行:($C:$C<>"")*(ROW(...)>起始行)*(ROW(...)<=结束行) 筛选出C列非空、且处于当前产品数据范围内的行
  4. 按顺序提取行号:SMALL(...,ROWS($L$4:L4)) 按顺序提取第1、2、3个符合条件的行号(ROWS部分随单元格横向变化自动递增)
  5. 返回对应口味:INDEX($C:$C,...) 根据提取到的行号返回C列对应的口味值

适配注意事项

公式已自动适配你提到的排版规则:

  • 产品间的3行间隔:公式只提取到下一个产品起始行之前的内容,自动跳过间隔行
  • 同产品口味间的2行间隔:仅提取C列非空值,自动忽略间隔的空行

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 13:48:34