在数据处理工作里,时常会碰到混合文本,里面既有数字又有其他字符,可我们只需要提取出其中的数字。别担心,借助Excel强大的函数功能,运用一个精妙的公式就能轻松实现。

一、操作实例演示

如下图所示,假设有一个A列数据,其中A2单元格内容为 “订单号:20230915-abc”,现在要提取其中的数字。

首先,在需要显示结果的单元格中输入公式:=CONCAT(IFERROR(--MID($A2,ROW($1:$99),1),""))

按下回车键,Excel会按照公式的逻辑进行运算。先是通过MID+ROW函数组合提取每个字符,再经双负号运算甄别数字,接着IFERROR函数清理错误值,最后CONCAT函数连接数字,在该单元格中呈现出提取出的数字 “20230915”。

学会这招,从Excel混合文本中提取数字so easy!-趣帮office教程网

二、公式解析

核心公式=CONCAT(IFERROR(--MID($A2,ROW($1:$99),1),""))

MID ROW 函数字符提取

MID($A2,ROW($1:$99),1)中,MID函数负责从指定文本(这里是$A2单元格的内容)中提取字符。ROW($1:$99)会生成一个从 1 到 99 的数字序列,与MID函数配合,使得MID>函数能依次从$A2单元格内容的第 1 个字符开始,一直到第 99 个字符,逐个提取出来。

双负号数字甄别

紧接着,两个负号--对提取出的每个字符进行运算。如果提取的字符是数字,经过双负号运算后,它会返回其本身;要是非数字字符,就会返回错误值#VALUE! 。例如,字符 “5” 经双负号运算还是 “5”,而字符 “a” 就会变成#VALUE! 。

IFERROR错误值处理

IFERROR函数检查前面双负号运算的结果,如果是错误值#VALUE!,就将其转化为空值"";如果是数字,则保持不变。这样,经过IFERROR函数处理后,原来混合文本中的非数字部分都被 “清理” 掉了,只剩下数字或空值。

CONCAT函数数字连接

最后,CONCAT函数把经过前面一系列处理后剩下的数字和空值连接起来。因为空值对连接结果没有实质影响,所以最终呈现出来的就是从混合文本中提取出来的完整数字串。

掌握这个提取混合文本中数字的技巧,能大幅提升数据处理的效率和准确性,无论是处理订单编号、产品型号,还是其他各类混合文本数据,都能游刃有余。赶紧在实际工作中尝试运用吧。