各位小伙伴大家好!日常处理 Excel 数据时,经常会遇到文本和数字混排的情况,想要单独把数字提取出来,不用手动抠数,3 个公式就能精准解决!不管数字出现在文本的开头、结尾还是中间位置,都能一键提取,今天就把这几个实用公式分享给大家。
先说明一下应用场景:我们遇到的混排文本,数字位置无非三种 —— 文本开头、文本结尾、文本中间,针对这三种情况,我分别整理了专属提取公式,还有能通吃所有情况的通用公式,按需使用就行。
数字在文本开头:简单直取公式
这种情况是最基础的提数场景,公式逻辑简单,上手就能用。
通用公式
=-LOOKUP (0,-LEFT (目标单元格,ROW ($1:$15)))
公式说明
- ROW($1:$15):这里的 15 代表提取数字的最大长度,如果需要提取的数字超过 15 位,直接把 15 改成对应数字即可,比如 20、30,按需调整;
- LEFT 函数:从目标单元格的左侧开始截取字符,配合 ROW 实现多长度截取;
- 双层负号 + LOOKUP:把截取的文本型数字转为数值型,同时精准匹配最长的有效数字串。
实例公式
假如数据在 B3 单元格,公式为:=-LOOKUP (0,-LEFT (B3,ROW ($1:$15)))
数字在文本结尾:反向截取公式
和开头提数逻辑一致,只是把截取方向换成右侧,公式改动很小,容易记忆。
通用公式
=-LOOKUP (0,-RIGHT (目标单元格,ROW ($1:$15)))
公式说明
核心逻辑和开头提数完全相同,仅将 LEFT(左截取)替换为 RIGHT(右截取),从目标单元格的右侧开始截取字符,ROW ($1:$15) 的数字长度同样可按需调整。
实例公式
数据在 B3 单元格时,公式为:=-LOOKUP (0,-RIGHT (B3,ROW ($1:$15)))
数字在文本中间:嵌套精准提数公式
这种情况相对复杂,因为数字被文本前后包裹,需要先定位数字的结束位置,再截取提取,不过核心思路还是和前两个公式一致,只是增加了嵌套定位步骤。
通用公式
=-LOOKUP (1,-RIGHT (LEFT (目标单元格,LOOKUP (10,--MID (目标单元格,ROW ($1:$20),1),ROW($1:$20))),ROW($1:$20)))
公式说明
- 1\内层 MID+ROW:逐个截取目标单元格的字符,转为数值后用 LOOKUP 定位最后一位数字的位置;
- 2\LEFT 函数:根据定位的位置,截取从开头到最后一位数字的所有字符;
- 外层 RIGHT+LOOKUP:从截取后的字符右侧反向提取,最终得到中间的数字串;
- 3\ROW($1:$20):此处 20 为目标单元格的最大字符长度,根据实际数据的字符数调整即可。
实例公式
数据在 B3 单元格时,公式为:=-LOOKUP (1,-RIGHT (LEFT (B3,LOOKUP (10,--MID (B3,ROW ($1:$20),1),ROW($1:$20))),ROW($1:$20)))
万能通用公式:一通解所有
很多小伙伴会问,中间提数的公式,能不能直接用于开头和结尾的情况?答案是完全可以!因为数字在开头、结尾,本质上是数字在 “特殊中间位置”,中间提数的嵌套公式能精准识别所有数字位置,通吃文本开头、结尾、中间三种提数场景。
小建议
如果能明确知道数字的具体位置(开头 / 结尾),优先使用对应的简易公式,更简洁易读;如果数字位置不固定,直接用中间提数的万能公式,一步到位,不用反复换公式。
以上就是 3 个超实用的 Excel 文本提数公式,记住核心逻辑:截取字符 + 数字定位 + LOOKUP 匹配,不管数字藏在文本哪个位置,都能轻松提取,再也不用手动一个个抠数字啦