Excel文本单元格按下划线拆分提取ID与内容公式求助
Excel单元格拆分多下划线内容公式
以下公式默认处理单元格为C321,可根据实际场景替换引用。
Excel 365/2021及以上版本(公式简洁,直接调用新增文本函数)
第一个单元格(提取ID部分)
=IF(ISNUMBER(--LEFT(C321,1)), IFERROR(TEXTBEFORE(C321,"_",-1,1,,C321), C321), C321)
第二个单元格(提取后缀文本)
=IF(ISNUMBER(--LEFT(C321,1)), IFERROR(TRIM(TEXTAFTER(C321,"_",-1,1,,C321)), C321), "")
- 逻辑说明:通过
TEXTBEFORE、TEXTAFTER的倒数第一个分隔符参数(-1)直接定位最后一个下划线的位置,自动适配多下划线场景,TRIM函数自动去除前后冗余空格。
旧版Excel(无TEXTBEFORE/TEXTAFTER函数兼容方案)
第一个单元格(提取ID部分)
=IF(ISNUMBER(--LEFT(C321,1)), IFERROR(LEFT(C321,LOOKUP(9^9,FIND("_",C321,ROW(INDIRECT("1:"&LEN(C321)))))-1), C321), C321)
第二个单元格(提取后缀文本)
=IF(ISNUMBER(--LEFT(C321,1)), IFERROR(TRIM(RIGHT(C321,LEN(C321)-LOOKUP(9^9,FIND("_",C321,ROW(INDIRECT("1:"&LEN(C321)))))), C321), "")
- 逻辑说明:通过
LOOKUP(9^9,FIND(...))结构定位最后一个下划线的出现位置,再通过LEFT/RIGHT截断内容,适配所有Excel版本。部分旧版Excel输入公式后需要按Ctrl+Shift+Enter确认数组计算。
效果验证
对示例内容3851v61_18.005_ Have the anchors for all suspended scaffolding system suspension lines and separate vertical lifelines been verified? :
- 第一个单元格返回:
3851v61_18.005 - 第二个单元格返回:
Have the anchors for all suspended scaffolding system suspension lines and separate vertical lifelines been verified?
完全符合需求。
内容的提问来源于stack exchange,提问作者Karen Schaefer
相关产品推荐
相关产品推荐

