前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Excel公式练习84:提取单元格中的10位数字

Excel公式练习84:提取单元格中的10位数字

作者头像
fanjy
发布2021-07-12 16:30:25
2.1K0
发布2021-07-12 16:30:25
举报
文章被收录于专栏:完美Excel

今天的练习是:如下图1所示的数据,每个单元格中包含由换行符分隔的3个数字,现在需要提取其中10位长的数字,如图1中的B列所示。

图1

先不看下面的答案,自已试试。

解决方案

公式1

可以试试下面的公式:

=LOOKUP(9E+307,--MID(A2,ROW(INDIRECT("1:"& LEN(A2)-9)),10))

该公式使用MID函数从单元格中的第1个数字开始依次取10位数,共14个数字,这14个数字中,由于有空格的存在,所以除单元格中的10位数外,其余都是9位数。然后使用LOOKUP函数在这些数字中进行查找,返回最大的一个数字,即单元格中的10位数。

公式2

试试下面的公式:

=MID(A2,SEARCH(CHAR(10)&REPT("?",10)&CHAR(10),CHAR(10)&A2&CHAR(10)),10)

在单元格中搜索前后都是空格且中间是10位数的数字。

公式3

试试下面的公式:

=IF(LEN(LEFT(A2,SEARCH(CHAR(10),A2,1)-1))=10,LEFT(A2,SEARCH(CHAR(10),A2,1)-1),IF(LEN(MID(A2,SEARCH(CHAR(10),A2,1)-1+2,FIND(CHAR(10),A2,FIND(CHAR(10),A2)+1)-(SEARCH(CHAR(10),A2,1)-1+2)))=10,MID(A2,SEARCH(CHAR(10),A2,1)-1+2,FIND(CHAR(10),A2,FIND(CHAR(10),A2)+1)-(SEARCH(CHAR(10),A2,1)-1+2)),IF(LEN(RIGHT(A2,LEN(A2)-FIND(CHAR(10),A2,FIND(CHAR(10),A2)+1)))=10,RIGHT(A2,LEN(A2)-FIND(CHAR(10),A2,FIND(CHAR(10),A2)+1)))))

这个公式很长,其实就是从头开始依次查找由空格分隔开的数字,如果其长度是10,则找到该数字。

提示:可以使用“公式求值”功能,详细查看上述公式是怎么运行的。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档