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

Excel公式求助:基于其他单元格内容动态填充指定文本

Excel无VBA公式实现C列按规则填充

核心逻辑

优先用B列团队名称 + A列提取的简化关键词;若B列无内容,用A列项目名 + 提取的关键词。

适用Excel 365/2021及以上版本的公式

直接在C1单元格输入以下公式,下拉填充即可:

=IF(B1<>"", B1&" "&IF(ISNUMBER(SEARCH("Enhancement",A1)),"Enh",TEXTBEFORE(TEXTAFTER(A1,": "),"/")), TEXTBEFORE(A1,":")&" "&IF(ISNUMBER(SEARCH("Enhancement",A1)),"Enh",TEXTBEFORE(TEXTAFTER(A1,": "),"/")))

公式拆解

  1. 判断B列有效性:IF(B1<>"", ..., ...),B列有值则走优先格式,否则用备选格式
  2. 提取A列关键词:
    • TEXTAFTER(A1,": "):截取A列中冒号后的内容
    • TEXTBEFORE(..., "/"):提取斜杠前的首个关键词(无斜杠则返回全部内容)
    • IF(ISNUMBER(SEARCH("Enhancement",A1)),"Enh",...):将"Enhancement"替换为简化的"Enh"
  3. 拼接结果:优先格式为「团队名 + 空格 + 关键词」,备选格式为「项目名 + 空格 + 关键词」

兼容旧版Excel(无TEXTBEFORE/TEXTAFTER函数)的公式

若使用旧版Excel,可使用以下公式:

=IF(B1<>"", B1&" "&IF(ISNUMBER(SEARCH("Enhancement",A1)),"Enh",LEFT(TRIM(MID(A1,FIND(":",A1)+2,99)),IFERROR(FIND("/",TRIM(MID(A1,FIND(":",A1)+2,99)))-1,99))), LEFT(A1,FIND(":",A1)-1)&" "&IF(ISNUMBER(SEARCH("Enhancement",A1)),"Enh",LEFT(TRIM(MID(A1,FIND(":",A1)+2,99)),IFERROR(FIND("/",TRIM(MID(A1,FIND(":",A1)+2,99)))-1,99))))

公式拆解

  1. 提取冒号后内容:TRIM(MID(A1,FIND(":",A1)+2,99)),截取并去除首尾空格
  2. 提取首个关键词:LEFT(..., IFERROR(FIND("/",...)-1,99)),获取斜杠前内容(无斜杠则取全部)
  3. 关键词简化:同样将"Enhancement"替换为"Enh"
  4. 结果拼接:同优先逻辑,分B列有值/无值两种情况

示例验证

A列内容B列内容C列输出结果
Project#1: O&M/Production Support/Defect FY22Q4Team_ATeam_A O&M
Project#1: Enhancement FY22Q4Team_BTeam_B Enh
Project#2: Bug Fix FY23Q1Project#2 Bug Fix

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 14:41:03