华宇注册
华宇注册
最新动态
你的位置:华宇注册 > 最新动态 >
看似提取指定内容,但核心技巧本质上却是数据定位,经典套路依旧在线!

图片

欢迎转发和点一下“在看”,文末留言互动!

置顶公众号或设为星标及时接收更新不迷路

图片

小伙伴们好,今天来和大家分享一道文本查找、提取的题目。题目比较简单,但今天会向大家介绍一个平时不太常用的函数。

原题目是这样子的:

图片

题目要求将B-D列中红色部分提取出来放到E列中。观察一下源数据,除了第13-15行外,所有的目标文本都在最后。这就给我们创造了使用LOOKUP函数的机会。

01

图片

在单元格E1中输入下列公式,并向下拖曳即可。

=SUBSTITUTE(LOOKUP(1,0/((A1:D1<>"")*(A1:D1<>0)),A1:D1),"折扣额","物料长代码")
(A1:D1<>"")*(A1:D1<>0)

这部分,是这道题目中的两个暗含条件,不为空和不为零。

LOOKUP(1,0/((A1:D1<>"")*(A1:D1<>0)),A1:D1)
而LOOKUP(1,0/(),目标区域或数组)则是LOOKUP函数的一个经典应用。详细信息可以参看帖子总结篇-LOOKUP函数实用终极帖。
SUBSTITUTE(LOOKUP(1,0/((A1:D1<>"")*(A1:D1<>0)),A1:D1),"折扣额","物料长代码")

最后多出来一个“折扣额”不符合题目要求,利用SUBSTITUTE函数替换即可。

02

这第二种方法,就需要PHONETIC这个函数了。它在平时并不常用,使用时多用于合并文本数据。在没有TEXTJOIN函数或者CONCAT函数时,它也在一些特定场合下起到了关键的作用。

图片

在单元格E1中输入下列公式,并向下拖曳即可。

=IFERROR(MID(PHONETIC(A1:D1),FIND(".",PHONETIC(A1:D1))-2,100),"物料长代码")
PHONETIC(A1:D1)

这部分,把文本数据合并。注意,PHONETIC只能合并文本数据。

FIND(".",PHONETIC(A1:D1))-2

这部分,找到目标文本的起始位置。

MID(PHONETIC(A1:D1),FIND(".",PHONETIC(A1:D1))-2,100)

MID函数部分,从起始位置开始,提取之后所有的字符串。

IFERROR(MID(PHONETIC(A1:D1),FIND(".",PHONETIC(A1:D1))-2,100),"物料长代码")

当FIND函数找不到“.”而返回错误值时,就利用IFERROR函数将错误值替换为“物料长代码”。

-END-

推荐阅读

别怕,SUBTOTAL函数并不难。学会就是握在了优势密码。

用此技巧填充合并单元格,能帮你少走好多弯路,真心建议收藏!

特别的EXCEL数据合并,一顿操作猛如虎,不如代码3分钟!

真后悔没有早点学FILTERXML函数,复杂的问题“海鲜”一下,立刻就变得简单了!

以前学的提取数值的方法,都不如今天的这个好用!

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。

友情链接:

Powered by 华宇注册 @2013-2022 RSS地图 HTML地图