Excel 公式:从文本中提取数字
大家好啊,今天和大家分享3个从文本中提取数字的公式。
首先看一下实例图片,在一串文本中,数字有可能在文本的开始处、结尾处或中间。
现在针对这三种情况,给出三种提取数字公式。
数字在文本开始处
这种情况提取数字相对简单些,以下是通用公式:
=-LOOKUP(0,-LEFT(要提取数字的单元格,ROW($1:$15)))
公式中,ROW($1:$15)
部分数字 15 表示想要提取的数字的最长长度,可以根据实际需求调整。
本例中,实际的公式如下:
=-LOOKUP(0,-LEFT(B3,ROW($1:$15)))
数字在文本结尾处
类似上一公式,这种情况的通用公式:
=-LOOKUP(0,-RIGHT(要提取数字的单元格,ROW($1:$15)))
公式中,ROW($1:$15)
部分数字 15 表示想要提取的数字的最长长度,可以根据实际需求调整。
本例中,实际的公式如下:
=-LOOKUP(0,-RIGHT(B3,ROW($1:$15)))
数字在文本中间
这种情况相对复杂些,但是思路是一致的,以下是通用公式:
=-LOOKUP(1,-RIGHT(LEFT(要提取数字的单元格,LOOKUP(10,--MID(要提取数字的单元格,ROW($1:$20),1),ROW($1:$18))),ROW($1:$20)))
公式中,ROW($1:$20)
部分数字 20 表示想要提取的数字的单元格长度,可以根据实际需求调整。
本例中,实际的公式如下:
=-LOOKUP(1,-RIGHT(LEFT(B3,LOOKUP(10,--MID(B3,ROW($1:$20),1),ROW($1:$20))),ROW($1:$20)))
通用公式
大家可能已经思考了,第三个公式适用于前两种情况吗?答案是“肯定适用!”。开始和结尾都是特殊的中间情况。
但是如果明确数字在开始处或结尾处,使用对应的公式会更简洁一些。
有问题欢迎在留言处交流。
转载注明:文章转载自「懒人Excel - lanrenexcel.com」
本文标题:Excel 公式:从文本中提取数字
有一个不成熟的建议,我是今天刚来的新访客,教程上读起来是理解的,但是关于lookup函数,其实我是有点懵的,所以,如果可以的话,能不能在lookup函数上加上一个跳转链接,让我这种不熟的可以去熟悉下,同时可以更加深入全面了解函数的具体使用方法。(拜托了,望采纳)
还有,真的非常感谢你的分享!
谢谢反馈。文中提到的函数和知识点可以在文章标签中找到对应的内容,因为在文章后,可能不容易发现。
不过你提的是好建议,后续我会在文中对这些重点函数和专题设置跳转链接,查看更方便。
我试了一下该公式只用于连续的几个数字,数字穿插在文本中就不能全部提取了,请问下小编有更高级的用法吗?
是的,这些公式只能提取连续的数字。关于数字穿插在文本,可以举个例子吗?
ABC123DE45FGH123ABC
嘿嘿,同问
通俗易懂的方法:=MAX(IFERROR(负号负号MID(A1,ROW($1:$20),COLUMN(A:L)),0))
文中的取中间的数字那里,公式里面的“1”是什么意思啊?
这里使用 LOOKUP 函数的第二种形式,即数组形式。第一个参数是查找值,如果 LOOKUP 函数找不到 lookup_value,则会与 数组中小于或等于 lookup_value 的最大值进行匹配。
great!
lookup函数找数值0,{-1;-12;-123}中小于或等于0的最大值不是-1么?
LOOKUP 函数对参数数组的另一个要求是:数组中的值必须按升序(按小到大)排列,否则LOOKUP函数可能无法返回正确的值。
厉害,明白了,谢谢指导
你好,我对于Excel也有一些总结,特别是数据处理这一块,我可以分享下这些知识,但是平台有提供这个入口吗
非常欢迎投稿,可以在公众号后台发私信交流一下