二维码 购物车
部落窝在线教育欢迎您!

按项目条件提取数字,LOOKUP-LEFT-MID-FIND无往不胜!

 

作者:老菜鸟来源:部落窝教育发布时间:2023-09-05 10:41:26点击:688

分享到:
0
收藏    收藏人气:0人
版权说明: 原创作品,禁止转载。
编按:

采用LOOKUP-LEFT-MID-FIND组合可按条件——项目名称——从单元格中提取相应的数字。对于365版本,公式更简单,用TEXTBEFORE-TEXTAFTER组合即可。

 

在实际业务中,很多人贪图方便,将多个数据放在一个格子里。例如下方的报销数据,多个费用项目混在一起。有没有办法按照对应的费用项目把金额分别提取出来呢?

 

 

办法肯定是有的。

1.通用方法——适合所有Excel版本

先用MID-FIND组合按费用项目提取以数字开头的固定长度的字符。

=MID($A2,FIND(B$1,$A2)+3,9)

 

图形用户界面, 表格
描述已自动生成

 

FIND函数查找费用项目的位置,再加3(费用项目的字数,示例中正好都是3个字,如果字数不等的话,可以用LEN(B1)代替3)作为开始提取位置。

最后提取9个字符。这里的数字都没有超过9位数的,提取9个字足够。

接下来再用LOOKUP-LEFT函数组合提取数字。

=-LOOKUP(0,-LEFT(B2,ROW($1:$9)))

 

 

-LEFT(B2,ROW($1:$9)),依次取出220200200元……等9个数据;再进行负运算,文本数字变成负数如-2-20-200,纯文本变成错误值#VALUE!

在一堆负数和错误值中用LOOKUP查找0(比负数都大),得到最后一个不为错误值的负数-200;最后再做负运算,得到正数200

 

点此了解LOOKUP的查找原理

 

将上述两步的LOOKUP-LEFTMID-FIND进行嵌套,得到完整的公式:

=-LOOKUP(0,-LEFT(MID($A2,FIND(B$1,$A2)+3,9),ROW($1:$9)))

 

 

2.适合Excel 365的简易方法

非常简单,利用TEXTAFTERTEXTBEFORE函数组合就能得到结果。

=--TEXTBEFORE(TEXTAFTER($A2,B$1),"")

 

 

直接提取每个费用项目后与“元”字之前的内容。

点此了解这两个函数的详细用法

 

 

本文配套的练习课件请加入QQ群:781412182下载。

Excel高手,快速提升工作效率,部落窝教育Excel精品好课任你选择

扫下方二维码关注公众号,可随时随地学习Excel

IMG_256

相关推荐:

LOOKUP查找原理

TEXTBEFORE和TEXTAFTER的用法

提取数字会这几招就够了

折线图做同比图表

版权申明:

本文作者老菜鸟;部落窝教育享有稿件专有使用权。若需转载请联系部落窝教育。