摘要:今天跟大家分享2个新的文本提取函数,跟之前讲过的TEXTSPLITF非常的相似,都是根据分隔符来进行数据提取的,它们就是TEXTBEFORE与TEXTAFTER,我们来学习下怎么用吧!
今天跟大家分享2个新的文本提取函数,跟之前讲过的TEXTSPLITF非常的相似,都是根据分隔符来进行数据提取的,它们就是TEXTBEFORE与TEXTAFTER,我们来学习下怎么用吧!
TEXTAFTER:提取分隔符之后的数据
语法:=TEXTAFTER (text,delimiter,[instance_num], [match_mode], [match_end], [if_not_found])
参数1:要拆分的字符
参数2:分隔符
参数3:匹配方向,默认为1从左到右匹配,如果设置为负数则从右到左匹配分隔符
参数4:是否区域大小写,默认0不区分,设置为1则区分大小写
参数5:是否将文本结尾看作分隔符,默认0结尾不是分隔符,1则将结尾字符看作分隔符
参数6:如果函数提取不到结果,则返回参数6
这个函数乍一看参数非常的,但是只有第一,第二参数是必选参数,其他的都是可选参数,是可以直接忽略的,
与之类似的还有TEXTBEFORE,它的作用是提取分隔符之前的文本,用法,参数基本都是一样的,我们就不再介绍了,下面我们来看下函数的用法
前两个参数都比较的简单,我主要从第三个参数开始了解,第三参数是用来设置匹配方向的,如果字符串中存在多个分隔符,就需要设置这个参数,结果如下图所示
设置为正数表示从左往右进行匹配
设置为负数则表示从右往左进行匹配
里面的数字就表示具体第几个分隔符开始提取
参数4是用来设置分隔符是否需要区分大小写的
0表示区分大小写。默认为0,区分大小写
1表示不区分大小写分
这个参数的作用是否将文本的结尾看作是分割符,它主要用在文本中不存在分隔符的情况
0表示不将结尾看作分隔符,不存在拆分字符,则返回NA错位置。默认为0
1.表示将结尾看作是分隔符,不存在拆分字符,则返回空白
如果函数返回了NA得错误值,我们可以使用参数6将其屏蔽掉,设置第六参数的前提是第五参数必须为0
以上就是函数的每个参数的作用,之前跟大家分享一些使用技巧
公式:=TEXTBEFORE(B2,{"kg";"个";"袋"})
TEXTBEFOR与TEXTAFTER能在第二参数中设置多个分隔符,实现多个分隔符的快速提取,不用逐一设置,这个还是比较方便的。
公式:=IF(TEXTAFTER(B2,"-")*1>TEXTBEFORE(B2,"-")*1,TEXTAFTER(B2,"-")*1-TEXTBEFORE(B2,"-")*1,TEXTAFTER(B2,"-")*1+1-TEXTBEFORE(B2,"-")*1)*24
因为存在跨天的情况,我们需要做判断,所以这个函数主体是一个IF函数
TEXTAFTER(B2,"-")的作用是提取下班日期
TEXTBEFORE(B2,"-")的作用是提取上班日期
因为它们都是文本函数,还需要将其乘1,将文本数字转换为数字格式
公式的原理也很简单,如果下班时间大于上班时间,就直接使用下班减去上班,如果条件不成立,上班时间加上1再减去下班时间,最后乘以24,将时间转换为对应的小时数即可
八、嵌套提取TEXTBEFOR与TEXTAFTE能够进行嵌套提取,用于提取分隔符之前的数据,我们来看下具体的案例吧
公式:=TEXTAFTER(TEXTBEFORE(A2," "),":")
先使用TEXTBEFOR提取分隔符之前的数据,然后再使用TEXTAFTER提取分隔符之后的数据,这样的话就能提取到分隔符之间的数据了
以上就是今天分享的全部内容TEXTAFTER函数的出现,可以大大节省我们的时间,不必再使用MID+FIND进行查找提取,还是非常方便的,大家可以动手试一下
如果你想要提高工作效率,不想再求同事帮你解决各种Excel问题,可以了解下我的专栏,WPS用户也能使用,讲解了函数、图表、透视表、数据看板等常用功能,带你快速成为Excel高手
来源:Excel从零到一