前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Excel经典公式:提取位于字符串后面的数字

Excel经典公式:提取位于字符串后面的数字

作者头像
fanjy
发布2022-06-04 09:51:14
2.4K0
发布2022-06-04 09:51:14
举报
文章被收录于专栏:完美Excel完美Excel

标签:公式与函数

有时候,可能有一个数据集,单元格中包含着文本和数字,其中数字在字符串的右侧,如下图1所示,你希望删除所有文本,而只保留数字。

图1

下面的公式将删除数字左侧的所有文本,因此只剩下字符串中的数字部分。

=RIGHT(A2,LEN(A2)-MIN(IFERROR(FIND({0,1,2,3,4,5,6,7,8,9},A2),LEN(A2)))+1)

向下拉,拖放公式至数据单元格末尾,结果如下图2所示。

图2

上面的公式移除了单元格中左侧的文本部分,只剩下右侧的数字。

公式中:

FIND({0,1,2,3,4,5,6,7,8,9},A2)

将在单元格中查找这10位数字,并返回这些数字的位置组成的数组。例如,在单元格A2中,将返回数组:

{14,15,13,#VALUE!,#VALUE!,#VALUE!,#VALUE!,#VALUE!,#VALUE!,#VALUE!}

正如你所看到的,它返回10个值,每个值代表该数字在单元格中的位置。由于数字0在单元格中的第14个位置,因此数组中的第一个值是14;由于3不在单元格中,因此返回#VALUE!。

同样,如果单元格中存在某个数字,则查找并返回一个代表该数字位置的数字,如果不存在,则返回值错误。

然后,在IFERROR中放置该公式中,这样就可以消除数组中的值错误值。此时,IFERROR公式在单元格中找到数字时将返回一个数字,如果找不到数字,则将返回该单元格中字符串的长度(使用LEN公式完成)。

接着,使用了MIN函数来找出数组中的最小值,即该单元格中数字的起始位置。例如,在单元格A2中,它会提供值13,这意味着该单元格中的文本部分在第12个字符处结束,数字从第13个字符开始。

现在,知道了数字在单元格中的起始位置,接着需要知道需要从左侧删除多少个字符。为此,使用LEN函数来计算单元格中字符串的总长度,并从中减去刚才得到的结果,这样就可以知道左侧有多少个文本字符。

最后,使用了RIGHT函数从右侧提取所有数字,这意味着左侧的所有文本字符都被删除了。

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

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

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

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

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

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