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

如何在另一列'-'后前4位子串变化时,仅在首匹配行写入1?

需求说明
  • 检查单元格文本中“-”后的前4个字符:
    • 连续行中该子串相同时,仅在首个匹配行填入1,后续行留空(例:ALEGRALL-1BLU4060与ALEGRALL-1BLU5080仅首行写1)
    • 连续行中该子串不同时,两行都填入1(例:ACADIACA-1BLK537A与ACADIACA-1GRY537A两行都写1)
已尝试的公式
  • 公式1(所有单元格都输出内容,不符合需求):
    =IF(O2<>O3,1,"")
    
  • 公式2(在匹配组最后一行输出1,不符合首行输出要求):
    =IF(LEFT(A3,4) = LEFT(A4,4),"",1)
    
解决方案

假设目标数据在A列,在B2单元格输入以下公式,下拉填充即可:

=IFERROR(IF(MID(A2,FIND("-",A2)+1,4)<>MID(A1,FIND("-",A1)+1,4),1,""),1)

公式说明

  • FIND("-",A2)+1:定位到A2中“-”的下一个字符位置,作为提取子串的起始点
  • MID(A2, ... ,4):提取“-”后的前4个字符
  • 对比当前行与上一行的目标子串,不同则输出1,相同则留空;第一行因无上一行参照,用IFERROR直接返回1

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 05:40:55