Excel文本处理函数大全:LEFT、RIGHT、MID实用技巧分享
在excel数据处理中,文本提取与清洗占据60%以上的日常操作时间。掌握LEFT、RIGHT、MID三大核心函数及其组合技巧,能让你的工作效率大幅提升!
一、基础函数速查表
函数 | 语法 | 核心功能 | 示例 |
---|---|---|---|
LEFT | =LEFT(文本, [长度]) |
从左侧截取字符 | =LEFT("Excel",3) → "Ex" |
RIGHT | =RIGHT(文本, [长度]) |
从右侧截取字符 | =RIGHT("2024",2) → "24" |
MID | =MID(文本, 起始位, 长度) |
从中间截取字符 | =MID("ABC123",2,3) → "BC1" |
特殊规则:
- 截取长度超过文本长度时,返回整个字符串
- 省略长度参数时,默认截取1个字符
- 起始位置超过文本长度时返回空值
二、组合函数实战技巧
1. 提取分隔符两侧内容
(1) 提取"-"左侧内容
=LEFT(A2,FIND("-",A2)-1)
案例:
"张三-1001"
→ "张三"
(2) 提取"-"右侧内容
=RIGHT(A2,LEN(A2)-FIND("-",A2))
案例:
"手机-iPhone15"
→ "iPhone15"
(3) 提取两个"-"之间的内容
=MID(A2,FIND("-",A2)+1,FIND("-",A2,FIND("-",A2)+1)-FIND("-",A2)-1)
简化版(Excel 365):
=INDEX(TEXTSPLIT(A2,"-"),2)
2. 固定宽度文本拆分
场景:拆分"A123B456C789"
(每3位一组)
=LEFT(A2,3) // A123
=MID(A2,4,3) // B456
=RIGHT(A2,3) // C789
动态化公式(向右拖动自动提取):
=MID($A2,(COLUMN(A1)-1)*3+1,3)
3. 混合文本数字分离
场景:从"订单号:ORD2024001"
提取数字部分
=RIGHT(A2,LEN(A2)-MIN(IFERROR(FIND({0,1,2,3,4,5,6,7,8,9},A2),LEN(A2)+1))+1)
替代方案(Excel 365):
=TEXTAFTER(TEXTBEFORE(A2,":",-1),":",,1,1)
三、特殊场景解决方案
1. 处理不规则分隔符
问题:数据中有"张三,,1001"
(多个连续分隔符)
=LEFT(A2,FIND(",,",A2)-1) // 提取第一个分隔符前内容
=TRIM(MID(SUBSTITUTE(A2,",",REPT(" ",100)),100,100)) // 提取第二个字段
2. 错误值防御处理
常见错误:
#VALUE!
:分隔符不存在#NUM!
:截取长度为负数
解决方案:
=IFERROR(LEFT(A2,FIND("-",A2)-1),"原始值") // 分隔符不存在时返回原值
=IF(FIND("-",A2)>0,MID(A2,FIND("-",A2)+1,4),"") // 先判断再截取
四、性能优化技巧
- 减少重复计算:
- 将
FIND
结果赋值给辅助列 - 使用
LET
函数(Excel 365):=LET(pos,FIND("-",A2),LEFT(A2,pos-1))
- 将
- 公式加速技巧:
- 避免在长公式中重复计算相同函数
- 优先使用
IFERROR
包裹易错公式
五、经典案例库
场景 | 数据示例 | 公式 | 结果 |
---|---|---|---|
提取身份证出生日期 | 11010519900307XXXX |
=MID(A2,7,8) |
19900307 |
拆分姓名与职称 | 张三_高级工程师 |
=LEFT(A2,FIND("_",A2)-1) =RIGHT(A2,LEN(A2)-FIND("_",A2)) |
姓名: 张三 职称: 高级工程师 |
标准化产品编码 | PRD-2024-001 |
=SUBSTITUTE(SUBSTITUTE(A2,"PRD-",""),"-","") |
2024001 |
六、学习建议
- 调试技巧:按
Ctrl+~
显示公式,逐步检查中间结果 - 建立模板库:将常用公式保存为自定义函数或模板
- 实测数据:掌握这些技巧可使文本处理效率提升300%以上!
阅读剩余
网站声明
本站内容可能存在水印或引流等信息,请擦亮眼睛自行鉴别;以免上当受骗;
本站提供的内容仅限用于学习和研究目的,不得将本站内容用于商业或者非法用途;